Asp.Net Unique Architecture Authorize
omid sotooniکنترل سطح دسترسی در فریم ورک (AUA) Asp.Net Unique Architecture
در فریم ورک Asp.Net Unique Architecture شما به عنوان مدیر می توانید دسترسی کاربران را تا ریزترین سطح ممکن کنترل کنید. این عمل توسط ماژول مدیریت کاربران انجام می گیرد. شما می توانید با تعریف نقش ها (Roles) و اختصاص دادن سطوح دسترسی UserAcess به نقش ها، آنها را به کاربران نسبت دهید.
در فریم ورک Asp.Net Unique Architecture شما به عنوان مدیر سایت می توانید فعالیت کاربران را برنامه ریزی کنید. این عمل توسط ماژول مدیریت کاربران انجام می گیرد.شما می توانید با تعریف نقش های کاربری(Roles) و اختصاص کاربران به این نقش ها فعالیت های آن ها را تقسیم نمایید. مدیریت این فعالیت ها با اعطای مجوزهای دسترسی به این کاربران انجام می گیرد. توسط این مجوزها شما می توانید مشخص کنید که چه کاربری حق دسترسی به کدام یک از قسمت های سایت را دارا می باشد. به عبارت ساده تر می توان تعیین کرد که چه کاربری به کدام قسمت ها دسترسی دارد و به چه قسمت هایی دسترسی ندارد. این ماژول باعث می شود که کاربران، ثبت نام و عضو شدن در وب سایت شما را لذتبخش بدانندواحساس امنیت کنند.
به طور کلی مدیریت کاربران شامل امکانات زیر می باشد:
• مدیریت و تعریف کاربران بصورت نامحدود
• ویرایش مشخصات کاربران
• فعال و غیر فعال کردن کاربران
• تعریف نقش های کاربری
• اختصاص کاربران به نقش ها
• تعیین سطوح دسترسی کاربران ومجوزهای لازم برای نقش ها
• تعریف مجوز های دسترسی برای یک شخص بدون در نظر گرفتن کاربر
• اختصاص شناسه و گذر واژه برای هر کاربر
• نگهداری اطلاعات تماس کاربران
• قابلیت انتقال سطوح دسترسی به کاربرای زیر دست تا بی نهایت
فریم ورک Asp.Net Unique Architecture از قدرت و امنیت بالایی برخوردار است. امنیت مهمترین بخش هر نرم افزار است . در فریم ورک AUA تیم امنیت گروه نرم افزاری هیلتن توانسته است با تلاش و بررسی های محصولات مشابه بهترین روش را برای امنیت انتخاب نماید که از لاحاظ پرفرمنس سربار زیادی ندارد.
یکی از مهمترین و جالب ترین نکات در فریم ورک AUA مبحث Authentication وAuthorization می باشد . که به راحتی قابل کسترش و توسعه است و میتوان تا کوچکترین لول Action ها را کنترل نمود.
چهار مدل Authentication and Authorization در فریم ورک AUA وجود دارد که به راحتی می توان سطح دسترسی در کنترلر و اکشن را مشخص نمود .
- WebAuthorize با استفاده از این Attribute می توان سطوح دسترسی را برای اکشن و کنترلر مشخص نمود.
- AllowLoggedInUser کاربر فقط کافی است لاگین کرده باشد.
- OnlyLocalActionAuthorize این Attribute برای اکشن و کنترلر های است که فقط باید به صورت لوکال روی سرور فراخوانی شوند.
- AllowAnonymousAuthorize هر کاربری می تواند بدون محدودیت به این اکشن و کنترلر دسترسی داشته باشد
برای استفاده از WebAuthorize باید برای هر کنترل یا اکشن در EUserAccess یک ایتم اضافه کنید. در پایگاه داده در جدول UserAccess نام و شماره دسترسی و توضیحات و URL را اضافه می کنیم.
برای استفاده از WebAuthorize فقط کافی است آن را بالای کنترلر یا اکشن بنویسید. برای مثال دسترسی به اکشن زیر فقط برای کاربرانی می باشد که دسترسی AppUser = 1را داشته باشند.
[WebAuthorize(EUserAccess.AppUser)]
ورودی WebAuthorize می تواند چندین سطح دسترسی وجود داشته باشد که با هم OR می شوند. یعنی کاربر اگر یکی از این دسترسی ها را داشته باشد به آن منبع دسترسی دارد.عنوان صفحات به صورت پیشفرض با توجه به توضیحات موجود در جدول UserAccess برای صفحه لود می شود .
آدرس این مقاله در وبسایت هیلتن:
🔗 www.heilton.com/Article/AspNet-Unique-Architecture/Authorize
کانال تلگرام گروه هیلتن😊👇 JOiN → @HeiltonProgramming