سطوح دسترسی (Permissions):
هارد دیسک را که پارتیشن بندی می کنید ، برای اینکه بتوانید از آنها استفاده کنید ، باید Format شوند . چند عدد فایل سیستم ( FAT ، FAT 32 ، NTFS ) وجود دارند ، که ما با آنها هارد های خود را فرمت می کنیم و می دانیم NTFS انتخاب همیشگی ما خواهد بود .
در حالت NTFS یک سری قابلیت ها وجود دارند که در FAT یا FAT 32 مشاهده نمی شود . مثلا اضافه شدن تب Quota یا تب Security منوط به این است که پارتیشن شما NTFS باشد .
ایجاد Permission :
✔️ بر روی پارتیشن های NTFS و منابعی که روی آن می نشیند ، قابلیتی داریم به اسم سطوح دسترسی (Permissions) ، همان تب Security که در تصویر بالا مشاهده کردید .
✔️ ایجاد Permission از پارتیشن شروع می شود ( یعنی می توانید بر روی پارتیشن اعمال کنید) ، همچنین بر روی File و Folder هم اعمال می شود ، به شرط آنکه NTFS باشد .
Permission ( سطوح دسترسی ) ، اینکه هر کسی از این Folder ، File و پارتیشن ما تا چه حدی می تواند استفاده کند ، داستان آن بدین صورت است :
4 تا Permission اصلی وجود دارند :
Read : کسانی که بر روی
فایل یا فولدر Permission Read دارند ، می توانند فایل را باز کنند و بخوانند ، اما
قدرت تغییر و پاک کردن فایل را ندارند .
✔️حالتی به اسم Read & Execute هم
وجود دارد ، که همان قابلیت Read را دارد ، اما برای فایل های اجرایی است .
✔️ کسی که بر روی فایل یا فولدری قدرت Read دارد ، می تواند لیست Permission ها را ببیند
، اما Edit نمی تواند بگیرد .( فقط Full Controll این قابلیت را دارد )
Write : یک پله بالاتر از Read می باشد . کسانی که بر روی فایل و فولدر Permission Write دارند ، می توانند فایل را باز کنند و تغییر دهند ، اما قدرت پاک کردن را ندارند .
Modify : یعنی می
توانند فایل را باز کنند ، تغییر دهند و همچنین پاک کنند . اما نمی توانند
Permission خود و دیگران را تغییر بدهند .
✔️ مثلا اگر روی یک فایل Permission Modify دارید و بخواهید به User دیگری هم Permission
Modify بدهید ، امکان پذیر نیست .
Full Control : علاوه بر مشاهده ، تغییر و حذف فایل ، می توانید Permission ها را تغییر دهید .
👈 No Access : جزء Permission های اصلی نیست ، اما قابلیت آن برای ما وجود دارد که اجازه باز کردن فایل را به کاربر نمی دهد .
عملکرد Permissions :
✔️ بر روی فایل Propertise
گرفته و وارد تب Security شوید . صفحه از 2 بخش تشکیل
شده است :
بخش بالا : یک سری User و Group در لیست قرار داده شده است .
بخش پایین
: قابلیت های کاربران شما است . با انتخاب هر کدام از User یا Group در بخش بالا ، سطوح دسترسی در بخش پایین
قابل مشاهده است .
✔️ اگر Permissions شما در ستون
Allow
تیک خورده باشد ، یعنی این قابلیت را دارد و اگر در ستون
Deny
تیک خورده باشید ، این قابلیت را ندارد .
مثلا Administrator 👈 User ، ذاتاً Full Control را دارد .
قوانین در بحث Permissions :
1
اگر کاربری عضو گروهی باشد و آن گروه در لیست ما Permission داشته باشد ، آن
کاربر نیز اتوماتیک آن Permission گروه را به ارث خواهد برد .
مثلا : Ali
👈 User ، عضو گروه Users است ، که گروه Users فقط قابلیت Read را دارد .
بنابراین نیازی نیست که مجدداً Ali را صدا بزنیم و به آن Permission Read را
بدهیم .
2
اگر کاربری از یک گروهی ، قدرت را بگیرد و از یک سمت دیگر قدرتش گرفته شود ،
آن گرفته شده شرط است .
3
اگر کاربری هم خودش و هم گروهش در لیست نباشد ، حکم آن Deny است . ( فایل هم
برای آن باز نمی شود )
4
کاربری که در بخش پایین ، هم در ستون Allow و هم در ستون Deny تیک داشته باشد
، حکم آن Deny است .
5
اگر کاربر مورد نظر در لیست باشد ، اما Permission را نه در ستون Allow و نه
در ستون Deny تیک داشته باشد ، حکم آن Deny است .
👈 کلاً سیستم برای هر چیزی که مجهول است ، حکم Deny را در نظر می گیرد . اصطلاحاً می گوییم ، Deny از Allow ارجع تر است .
قسمت اول سناریو :
برای کاربری به اسم Permission ، Ali های 👈 Write ، Read و No Access در نظر بگیرید .
Permission Read : علی خودش عضو گروه Users است و قاعدتاً از گروه Users این قابلیت را به ارث برده است . بنابراین نیازی نیست آن را دوباره صدا بزنم و Permission به آن بدهیم .
Permission Write : ابتدا باید Ali را به لیست فراخوان کنیم .
✔️ بعد از گرفتن Propertise
بر روی فایل ، Edit
را انتخاب کنید .
✔️ در مرحله بعد کلید Add
را بزنید.
✔️ در پنجری باز شده نام User را تایپ کرده و گزینه Check Names
را کلیک کنید .
👈 Ali به لیست اضافه شد . همانطور که مشاهده می کنید ، به دلیل اینکه Ali عضو
گروه Users بود 2 تیک برای آن فعال است . حال ما Write را به آن اضافه می کنیم .
نکته
: اصلاً به این عنوان نگویید که ، اگر من Write را تیک بزنم ، چون یه پله بالاتر
از Read است ، بنابراین Read هم دارد . 👈 خیر . پایین دست را کلاً تیک بزنید .
( در حقیقت وقتی Permission پایین دست ندارید ، Permission بالا دست کار نمی کند )
Permission No Access : هر وقت خواستید شخص یا گروهی را محروم از فایل یا فولدری کنید ، کافی است تمام ستون Deny را تیک بزنید .
✔️ بعد از گرفتن Propertise
بر روی فایل ، Edit
را انتخاب کنید .
✔️ در مرحله بعد کلید Add
را بزنید.
✔️ در پنجری باز شده نام User را تایپ کرده و گزینه Check Names
را کلیک کنید .
✔️
بعد از اضافه شدن Ali به لیست ، تمام ستون Deny را تیک بزنید ، که اصطلاحاً به آن No Access گویند .
✔️ بعد از Apply ، سیستم به شما اخطار داده و می گوید ، طرف را داری از ریشه میزنی . میگم اشکالی نداره ، درستش همینه و ادامه می دهم .
👈 با اکانت Ali به سیستم Login کرده ، تا نتیجه Pemission های تنظیم شده را مشاهده کنیم .
Permission No Access بر روی فایل اعمال شده ، اما Permission های Read و Write
بر روی هیچ کدام از فایل ها اعمال نشده اند و هیچ سپری ندارد .😐
پناه بر خدا 😦 این چه نوع Pemission است ، که همه کاری می کند .
ما فکر کردیم که Ali ظاهراً عضو گروه Users است ، اما عضو یک سری گروه های مخفی است که ما آنها را نمی بینیم .مثلا Ali عضو گروه Everyone است ( یعنی همه) ، که ما در لیست Everyone را نداریم .
سوال :
کاربری که User Name و Password خود را جهت ورود به سیستم وارد می کند ، آیا من می
توانم بگویم این کاربر ، یک کاربر شناسایی شده است ؟ بله درست است . که اصطلاحاً به
آن Authenticated Users گویند ، که قدرت آن Modify دارد.
هر کاربری که User Name و Password خود را جهت ورود به سیستم وارد می کند ، ظاهراً عضو گروه Users می باشد ، اما به صورت اتوماتیک عضو گروه Authenticated Users است که قدرت Modify دارد . به خاطر همین Ali تا مرز پاک کردن پیش رفت .
راه حل چیست ؟
2 راه وجود دارد :
1
حد قدرت Authenticated Users را پایین بیاوریم . ( تیک Modify آن را برداریم )
، البته به دلیل ارث بری این گزینه غیر فعال است ، بنابراین از روش دوم استفاده می
کنیم .
2
کلاً Authenticated Users را از لیست
حذف
کنیم . وقتی در لیست نباشد ، Ali از گروه Users ارث بری می کند و مشکل ما حل
خواهد شد .
حذف Authenticated Users :
✔️ بعد از گرفتن Propertise بر روی فایل ، Edit را انتخاب کنید .
✔️ در مرحله بعد گروه Authenticated Users را انتخاب و گزینه Remove را کلیک کنید
.
✔️ Remove
را که انتخاب کنید یک پیام به ما می دهد که متن پیام بدین شرح است :
من به خاطر اینکه قابلیت ها را از Parent به ارث ( inheriting ) بردم ، به بابام بگو بیاد منو را از اینجا بردارد . من را سیستم عامل اینجا گذاشته تو که نگذاشتی ، بنابراین به سیستم عامل بگو بیاد منو از اینجا بردارد .
سوال
:
زمانی که یک فایل را می سازید ، Permission آن چیست ؟
✔️ Permission آن فولدری که فایل مورد نظر در آن قرار دارد .
✔️ این Folder من است ، یک Folder دیگر در آن می سازیم ، Permission این Folder هر
چی است روی Folder من تأثیر می گذارد .
✔️ حال این Folder در Folder دیگری است که از بابا بزرگ ، Permission را گرفته
است . این بابا بزرگ در درایو C نشسته است . در نهایت همه اینها به جدّ خودشان ،
پارتیشن بر می گردند .
حذف قائده به ارث بری :
✔️ در تب Security ، گزینه
Advanced
را انتخاب کنید .
✔️ در ستون
inherited from
نوشته شده که ، من از Parent به ارث بردم.
✔️ در قسمت پایین دکمه
Disable inheritance
را کلیک کنید .
بعد از انتخاب Disable inheritance سیستم از ما می پرسد که ، چگونه به ارث نبرم . ( به صورت Convert یا به صورت Remove )
✔️ Convert inherited permissions into explicit permissions on this object : 👈 لیست را نگه می دارم ، اما از این به بعد به ارث نمی برم .
✔️ Remove all inherited permissions from this object : 👈 لیست را کلاً پاک می کنم و از این به بعد هم به ارث نمی برم .
اینکه لیست بماند یا تخلیه شود ، من از گزینه Convert استفاده می کنم و می گویم ، لیست را نگه دار ، اگر چیزی خواستم خودم کم و زیاد می کنم .
تمام این کار ها را انجام دادیم که به سیستم بفهمانیم گروه Authenticated Users
اضافی است و باید Remove شود .
حالا Ali شد آن چیزی که شما می خواستید . تقصیر خودش نبود، دوستان نابابی به نام Authenticated
Users او را دوره کرده بودند ، ما دوستان را از دور او پراندیم . حال مجدداً با اکانت
Ali وارد سیستم می شویم .
قسمت دوم سناریو :
سوال :
Ali در کامپیوتر خودش یک فولدر ساخته و یک فایل در آن قرار می دهد . Ali بر روی این
فایل چه قدرتی دارد ؟ 👈 قدرت Modify به دلیل گروه Authenticated Users .
به نظر شما کسی که Modify است ، می تواند Permission عوض کند ؟ خیر . پس چرا در
تب Security ، گزینه Edit سپر ندارد ؟ 🤔
✔️ کسی که فایل یا فولدر را می سازد ، اصطلاحاً می گوییم Owner آن است و Owner قدرت Full Control دارد .به همین دلیل گزینه Edit فعال است .
✔️ در تب Security قسمت Advanced ، صاحب آن مشخص شده است .
داستان چیست ؟
👦 Ali تصمیم می گیرد به مدت یک هفته به مرخصی برود .
👦 Ali پیش خودش می گوید ، خیلی هم خوب ، حالا دیگه به من قدرت Permission نمی دید
.
این یک هفته ای که قرار است به مرخصی بروم ، من رو فایلم به هیچکسی Permission
نمی دهم .ای حال میده 😄 . تو این یک هفته که نیستم، زنگم میزنند و منم گوشیم را خاموش
می کنم .
👦 Ali تصمیم می گیرد ، قائده به ارث بری را حذف کند و از کلمه منحوص
Remove استفاده می کند . وقتی در لیست کسی نباشد ، هیچکسی Permission نخواهد داشت
.😈
👦 Ok را که می زند ، سیستم اخطار می دهد و می گوید ، هیچکس قدرتی ندارد . مشکلی
نیست ، Yes می زنم .
البته یک بحث کوچکی پیش می آید . بر روی فایل خودش که کلیک می کند ، قدرت ندارد ، اما Ali حواسش کاملاً جمع بود . او Owner فایل است . درست است که الان Owner نمی تواند فایل را باز کند ، اما هفته آینده بر روی فایل Propertise می گیرد و از تب Security قسمت Edit ، خودش را به لیست اضافه می کند .
👦 Ali از دوستان حلالیت می طلبد و عازم سفر می شود . 🤚
👨🦱 فردای آن روز کاربری به نام Hasan ، در مدت زمانی که Ali نیست ، وظایف او را بر عهده می گیرد .
👨🦱 بر روی فایل دبل کلیک می کند و Access Denied 👈 Error را مشاهده می کند . ( آقای فلانی فکر کنم کامپیوتر ویروسی شده ، یک پیام عجیبی می بینم )
👨💼 مدیر IT متوجه می شود که ، این پیغام خطا مربوط به Permission است .
👨💼 با User خودش که زیر گروه Administrator است ، Login می کند . اما فایل برای او هم باز نخواهد شد ( او هم در لیست نیست ) چه برسد به Hasan .
البته Ali فکر یک جایی را نکرده بود که ، این داستان Permission ها یک شاه کلید دارد و آن شاه کلید دست Administrator است .
✔️ Administrator قدرتی دارد به اسم تصاحب کردن . 👈 Owner آن علی بوده ؟ از این به
بعد صاحبش من خواهم شد . اگر صاحب آن باشم ، Full Controll دارم و می توانم برای حسن
Permission تنظیم کنم .
✔️ بر روی فایل Propertise
و از تب Security
، گزینه Advanced
را انتخاب کنید .
✔️ Change
را از قسمت Owner انتخاب و صاحب آن را مشخص کنید .
✔️یک بار دیگر صفحه را باز و بسته کنید و از قسنت Edit به افراد Permission دهید .
Special Permissions :
در تصویر پایین تعدادی قانون را با هم بررسی می کنیم . دانستن این قوانین خوب است ، اما بیشتر جنبه امتحانی دارد ، مثلا می خواهید در امتحان بین المللی Microsoft شرکت کنید و یک سناریو تعریف می کنند ، User فلان این قدرت را دارد و غیره … حالا وضعیت Effective Permissions کاربر را حساب کنید .
✔️ User1 بر روی Permission Read 👈 Folder A دارد . نتیجه این است که ، بر روی
فایل های Folder A نیز ، Permission Read دارد .
✔️ User1 عضو Group B هم می باشد و Group B بر روی فولدر Permission Write دارد .
نتیجه این است که ، User1 بر روی فولدر و 2 فایل زیرمجموعه قدرت Read و Write
دارد .
این نشان می دهد که ، Permission NTFS جمع پذیر ( Cumulative ) هستند . ( مجموع به ارث می رسد )
✔️ حالا User1 ، عضو Group A شد و Group A بر روی فایل دوم Permission Write
ندارد . نتیجه این است که ، User1 بر روی فایل دوم Permission Write ندارد .
این نشان می دهد که
، Deny از Allow ارجع تر است
.
در دنیای واقعی ، نیازی نیست شما به خودتان زحمت بدهید و اینها را محاسبه کنید .
به سیستم بگویید من می خواهم بدانم وضعیت Ali 👈 User الان چیست ؟
خود
سیستم حساب می کند . ( Ali از چه گروهی چه چیزی دارد یا چه چیزی ندارد ، آنها را
برای شما لیست می کند )
✔️ بر روی فایل
Propertise و از تب
Security
، گزینه Advanced
را انتخاب کنید .
✔️ تب
Effective Access
را انتخاب و
Select a User
را کلیک کنید .
✔️ در مرحله بعد
View Effective Access
را انتخاب کنید تا وضعیت User مورد نظر را بر روی این فایل بررسی کنید .
لیستی را که مشاهده می کنید ، در حقیقت Special Permission ها هستند . Special Permission یعنی ، ریز شده آن 5 تا Permission اصلی .👈 Full Control ، Modify ، Write ، Read
مثلا ، زمانی که به یک فایل Permission Read می دهید ، بدان معنا نیست که فقط فایل را باز کند . مثلا شما قدرت Read Attributes یا قدرت خواندن Read Permissions ( قبلا گفتیم صفحه Permission باز می شد ، اما Edit آن سپر داشت ) را به آن می دهید .
تغییر Special Permissions :
اگر احساس می کنید که مثلا ، از Permission Write یک بخش باشد یا نباشد ، باید در صفحه اصلی Special Permissions دنبال آن بگردید .
✔️ بر روی فایل
Propertise و از تب
Security
، گزینه Advanced
را انتخاب کنید .
✔️ در پنجره باز شده
User مورد نظر را انتخاب و Edit بگیرید .
✔️ نوع قابلیت های Allow و Deny را از قسمت Type
انتخاب کنید .
✔️ بعد از مشاهده لیست ، Show Advanced Permissions
را انتخاب کنید .
نکته ای که حائز اهمیت است ، زیاد خودتان را منوط به این نکنید ، که من حتما باید Special Permission ها را درست کنم . تا جایی که ممکن است با همان 4 تا Permissions اصلی کار کنید ، زیرا خیلی از وقت ها خروجی Special Permission ، آن چیزی که شما فکر می کنید ، در نمی آید .
سطح دسترسی Copy :
در تصویر پایین قوانین مربوط به Permission ها ، به هنگام Copy
و Past
کردن منابع را بررسی خواهیم کرد .
یک فایل داریم که در پارتیشن C قرار دارد . ( منظور تصویر در Root درایو C نیست ، یک فولدری در درایو C ) 👈 ما بر روی این فایل قدرت Full Control داریم .
✔️ اگر ما از این فایل Copy بگیریم و آن را در همان پارتیشن ، Past کنیم 👈
Permission مقصد را به ارث می برد . ( Destination Folders ، هرچی مقصد گفت )
مثلا : روی مقصد Permission Write دارید ، فایلی که Full Control است را
در Folder دیگری Past کنم ، Permission آن Write خواهد بود .
✔️ داستان بالا برای زمانی که Copy کنید و در یک پارتیشن دیگری Past کنید هم اتفاق می افتد . بنابراین پارتیشن چه عوض شود یا نشود ، مقصد شرط است .
2 نکته در Copy کردن حائز اهمیت است :
1
جهت Copy کردن یک فایل ، حداقل Permission آن در مبداء باید Read
باشد .
2
حداقل Permission مورد نیاز در مقصد ، جهت Past شدن باید Write باشد . زیرا
دارید یک چیز را به وجود می آورید .
سطح دسترسی Cut :
در تصویر پایین قوانین مربوط به Permission ها ، به هنگام
Cut و
Past
کردن منابع را بررسی خواهیم کرد .
بدانید و آگاه باشید ، تنها در یک حالت است
که ، Permission همانی که است باقی می ماند . یعنی اگر این حالت در ذهنتان باشد ،
تکلیف بقیه حالت ها ( که مقصد شرط است ) مشخص خواهد بود .
✔️ تنها حالتی که Permission تغییر نمی کند این است که ، یک فایل را Cut کنید و آن را در همان پارتیشن Past کنید ، صرف نظر از اینکه مقصد چه چیزی می گوید .
2 نکته در Cut کردن حائز اهمیت است :
1
جهت Cut کردن یک فایل ، حداقل Permission آن در مبداء باید Modify
باشد .
2
حداقل Permission مورد نیاز در مقصد ، جهت Past شدن باید Write باشد .
👈 تمام مطالبی که در بحث NTFS Permission تعریف کردیم ، در ویندوز Server هم اتفاق می افتد ، اما با این تفاوت که در ویندوز سرور گروه Authenticated Users وجود ندارد .