در این مقاله در چند گام ساده نحوه فعال سازی ADF Security در برنامههای تحت وب ADF را تشریح مینمایم. مثال استفاده شده برای این مقاله به این شرح میباشد که یک task flow ساده که شامل یک صفحه میباشد را ایجاد نموده و پس از آن یک role به نام myRole در ADF Security ایجاد نموده و task flow را برای افرادی که این role را دارند مجاز مینماییم. سپس یک کاربر به نام usr برای ورود ایجاد مینماییم و به آن مجوز myRole را اختصاص میدهیم تا بتواند task flow را اجرا نماید.
شرح
۱. ابتدا پروژه را ایجاد و task flow با نام secureTF ایجاد مینماییم. دقت فرمایید که این task flow از نوع bounded task flow میباشد. سپس یک صفحه نیز با نام main ایجاد مینماییم و درون secureTF قرار میدهیم.
۲. حال نوبت آن شده تا ADF Security را فعال نماییم. برای این منظور همانند تصویر زیر از application menu گزینه Secure منوی Configure ADF Security را کلیک نمایید تا ویزارد مخصوص برای فعالسازی ADF Security اجرا گردد
ویزارد فعال سازی ADF Security
۳. در مرحله اول گزینه پیش فرض آن را بدون تغییر باقی گذاشته و دکمه Next را میزنیم. در مرحله بعد برنامه تحت وبی را که میخواهیم برای آن ورود و خروج قرار دهیم را باید انتخاب نموده و پس از آن نوع مکانیسم اعتبارسنجی مورد استفاده را مشخص نماییم. در نوع اعتبارسنجی همانند تصویر زیر گزینه Form-Based Authentication را انتخاب مینماییم و گزینه Generate Default Pages را در حالت انتخاب قرار میدهیم. این گزینه باعث میشود تا فرم ورود و فرم خطا در ورود پیش فرض به صورت خودکار ساخته شود. سپس دکمه Next را کلیک مینماییم.
۴. این مرحله این امکان را میدهد تا به صورت خودکار بتوان به تمام صفحات و task flowهای موجود در برنامه مجوزدهی کرد که ما انتخاب اول آن را تغییر نداده تا خودمان به صورت دستی این مجوزدهی را با توجه به نیازمان انجام دهیم. دکمه Next را برای رفتن به مرحله بعد کلیک نمایید.
۵. در این مرحله میتوان تنظیم کرد که پس از ورود موفق کاربر، او را به یک صفحه خاص مثلا صفحه اصلی برنامه فرستاد. ما این قسمت را به صورت پیش فرض رها کرده و این امکان را فعال نخواهیم کرد تا مکانیسم پیشفرض ADF پس از ورود موفق کاربر را بر هم نزنیم. ADF به صورت پیش فرض کاربر را مجددا به همان صفحهای که از آنجا برای ورود به صفحه ورود هدایت شده، باز میگرداند.کلیک دکمه Next برای ورود به مرحله بعد تنها کاریست که باید انجام دهید.
۶. در این مرحله خلاصهای از اتفاقاتی که قرار است با زدن دکمه Finish رخ دهد را برای شما به نمایش میگذارد. دکمه finish را کلیک نمایید تا تغییرات نهایی و ADF Security فعال گردد.
۷. پس از فعالسازی ADF Security نوبت به تنظیم آن با توجه به نیازمان میباشد. در ابتدا باید یک role با نام myRole ایجاد نماییم. برای این کار از منوی application menu داخل گزینه Secure منوی Application Roles را کلیک نمایید تا صفحه مربوطه باز گردد.
۸. با زدن دکمه مثبت سبز رنگ (شماره یک در تصویر) یک role جدید ایجاد نموده و عنوان ( شماره دو در تصویر)آنرا به myRole و یا هرچیز دیگری که مایل هستید تغییر دهید و یا مقدار آنرا بدون تغییر رها کنید.
۹. برای ورود به برنامه نیاز به یک نام کاربری و رمز عبور داریم که برای ایجاد آن باید از Application Menu در گزینه Secure منوی Users را کلیک نماییم تا صفحه مربوطه باز شود.
۱۰. دکمه مثبت سبز ( شماره یک در تصویر زیر ) را کلیک نمایید تا کاربر جدید ایجاد گردد. نام کاربری(شماره دو در تصویر زیر) usr (دلخواه بوده و هرچیز دیگری میتواند باشد) را برای آن وارد نمایید . رمز عبور را نیز وارد نموده و در انتها دکمه مثبت سبز ( شماره سه در تصویر) را کلیک نموده و role که در مرحله قبل ایجاد کردید را برای کاربر انتخاب نمایید.
۱1. در انتها باید منابع برنامه را با توجه به سیاستهای امنیتی مورد نیاز مجوزدهی نمود . در این برنامه ما تنها یک role و یک task flow داریم و تنها تنظیمی که لازم میباشد دادن مجوز اجرای task flow به کسانی که مجوز myRole را دارند. برای این کار از Application Menu و گزینه Secure منوی ADF Policies را کلیک نمایید تا صفحه مربوطه باز شود.
۱۲. درtask flow ساخته شده را در صفحه باز شده ملاحظه خواهید نمود. آن را انتخاب نمایید و دکمه مثبت سبز(شماره یک در تصویر) را کلیک نمایید. لیست تمام roleهای موجود در برنامه چه آنهایی که خودتان ساختهاید و یا به صورت پیش فرض وجود دارند نمایش داده میشود. myRole را انتخاب نمایید تا task flow توسط کاربرانی که این مجوز را دارند قابل اجرا گردد.
تبریک میگویم تمام مراحل را به خوبی به پایان رساندید و حال کافیست برنامه را اجرا نمایید و ملاحظه نمایید که برنامه در ابتدا از شما نام کاربری و رمزعبور میخواهد و سپس صفحه main را به شما نمایش میدهد. دقت نمایید که برای اجرا بر روی main درون SecureTF کلیک نموده و اجرا را کلیک نمایید.
برای تست صحت عملکرد myRole را از کاربر خود بگیرد یا به عبارت دیگر آنرا از لیست roleهای کاربر در منوی Users گزینه Secure حذف نمایید و سپس برنامه را اجرا نمایید و با تصویر زیر یا به عبارت دقیقتر با خطای زیر روبرو خواهید شد.
نکته آخر اینکه برای حذف ADF Security کافیست همانند مرحله ۲ ویزارد آنرا اجرا نمایید و این بار گزینه آخر Remove ADF Security Configuration را انتخاب نمایید و دکمه Finish را کلیک نمایید تا تمام تنظیمات امنیتی برنامه با چند کلیک ساده حذف گردد.
در پایان اشاره میشود که میتوان نام کاربری و رمزعبور را از فراهم کنندگان دیگری همچون LDAP، پایگاه داده و سایر مواردی که وجود دارد بدست آورد و از صحت آن اطمینان حاصل نمود که در آینده نحوه استفاده از پایگاه داده را شرح خواهم داد.
فایل مثال
فایل PDF
با تشکر