PDA

View Full Version : تعیین سطح دسترسی کاربران با وب کانفینگ



sara_aryanfar
سه شنبه 24 آبان 1390, 12:20 عصر
با سلام می خواستم بدونم چطوری می تونم در وب کانفینگ تعیی کنیم اگر یک کاربر نقش خاص رو نداشته باشه نتونه به یک پوشه و فرم های داخل اون دسترسی داشته باشه البته میشه در لود هر صفحه این کار رو کرد و چک کرد اما می خوام بدونم برای یک پوشه هم میشه انجام داد تا نیازی نباشه تو رویداد همه صفحات اون پوشه نقش کاربر رو چک کنیم؟

smm2006sh
سه شنبه 24 آبان 1390, 14:00 عصر
سلام
شما وقتی از کنترل لاگین استفاده میکنید ، و توی قسمت سطح دسترسی به اون میگی مثلا این کاربر USER باشه یا ADMIN تنظیمات وب کانفیگ خودش به وجود میاد .

موفق باشید
یا علی

fakhravari
سه شنبه 24 آبان 1390, 14:35 عصر
از منو web site < configration
قسمت scurity
access rols
اول باید rols تعریف کنید

sarapepors
سه شنبه 24 آبان 1390, 19:27 عصر
سلام . میتونید اون فرم ها رو در یک پوشه قرار بدید و در وب کانفیگ اون پوشه خاص دسترسی به صفحات موجود رو محدود کنید به نقشی خاص:

<configuration>
<appSettings/>
<connectionStrings/>
<system.web>
<authorization>
<allowroles="addministrator"/>
<denyusers="*"/>
</authorization>
</system.web>
</configuration>

sara_aryanfar
سه شنبه 24 آبان 1390, 19:37 عصر
یعنی برای هر پوشه یک وب کانفینگ جدا تعریف کنم

oossaa
سه شنبه 24 آبان 1390, 19:49 عصر
یعنی برای هر پوشه یک وب کانفینگ جدا تعریف کنم

دوست عزیز web.config خاصیت ارث گذاری داره! یعنی به همه ی فولدرهای زیر شاخه ای که web.config هست اعمال میشه

fakhravari
سه شنبه 24 آبان 1390, 19:54 عصر
yes :بوس:

sara_aryanfar
سه شنبه 24 آبان 1390, 20:04 عصر
درسته عذر می خوام فقط یه موردی من الان این کار رو کردم و همون چیزی بود که می خواستم فقط یه موردی الان فرض کنین یه صفحه داریم داخل پوشه ادمین که فقط ادمین ها دسترسی دارند حالا اگه یه کاربر عادی اون صفحه رو درخواست کنه ارر میده آیا امکان این هست به جای این ارر به صفحه ای خاص هدایت بشه مثلا یه صفحه خطا که خودمون طراحی می کنیم یعنی اگر کاربر غیر مجاز هر کدوم از این صفحات رو درخواست کنه بره به اون صفحه

ASP.NET2
سه شنبه 24 آبان 1390, 20:13 عصر
درسته عذر می خوام فقط یه موردی من الان این کار رو کردم و همون چیزی بود که می خواستم فقط یه موردی الان فرض کنین یه صفحه داریم داخل پوشه ادمین که فقط ادمین ها دسترسی دارند حالا اگه یه کاربر عادی اون صفحه رو درخواست کنه ارر میده آیا امکان این هست به جای این ارر به صفحه ای خاص هدایت بشه مثلا یه صفحه خطا که خودمون طراحی می کنیم یعنی اگر کاربر غیر مجاز هر کدوم از این صفحات رو درخواست کنه بره به اون صفحه
سلام این یعنی اینکه اگر کاربر Login نشده بود وقتی خواست بره تو اون فولدر اجازه نداشته باشه و به یه صفحه ی دیگه مثل Login.Aspx هدایت بشه.؟
شما authentication رو تو Web Config چطور تعریف کردین ؟

sara_aryanfar
سه شنبه 24 آبان 1390, 20:16 عصر
بله منظورم همین هست برای اون پوشه وب کانفینگ اینطوری هست
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<authorization>
<allow roles="admin" />
<deny users="*"/>

</authorization>
</system.web>
</configuration>

ASP.NET2
سه شنبه 24 آبان 1390, 20:19 عصر
نه برای WebConfig کلی چکار کردین ؟

fakhravari
سه شنبه 24 آبان 1390, 20:24 عصر
باید در پوشه اول این وبکنفیگ بزارین

sara_aryanfar
سه شنبه 24 آبان 1390, 20:25 عصر
اینم وب کانفینگ اصلی<?xml version="1.0"?>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<system.web>
<roleManager enabled="true"/>
<authentication mode="Forms"/>
<compilation debug="true" targetFramework="4.0"/>

</system.web>
</configuration>

sara_aryanfar
سه شنبه 24 آبان 1390, 20:28 عصر
باید در پوشه اول این وبکنفیگ بزارین
این کد رو توضیح میدین کار بر به کجا فرستاده میشه

ASP.NET2
سه شنبه 24 آبان 1390, 20:29 عصر
اینم وب کانفینگ اصلی<?xml version="1.0"?>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<system.web>
<roleManager enabled="true"/>
<authentication mode="Forms"/>
<compilation debug="true" targetFramework="4.0"/>

</system.web>
</configuration>

خوب این کارو انجام بدین:


<authentication mode="Forms">
<forms loginUrl="~/Default.aspx" defaultUrl="~/Default.aspx" timeout="48000" slidingExpiration="true"/>
</authentication>


از LoginUrl و defaultUrl باید متوجه یه چیزایی شده باشین.

sara_aryanfar
سه شنبه 24 آبان 1390, 20:38 عصر
در مورد
timeout="48000"
توضیح میدین و اینکه بر چه اساسی تنظیم چه کاربردی داره ممنون

ASP.NET2
سه شنبه 24 آبان 1390, 20:48 عصر
در مورد
timeout="48000"
توضیح میدین و اینکه بر چه اساسی تنظیم چه کاربردی داره ممنون
به ساعت اگه تبدیلش کنی میشه تقریبا 13 ساعت عمر Cookie هستش که برا ساخته میشه.

sara_aryanfar
سه شنبه 24 آبان 1390, 21:03 عصر
استاندارد اون چنده یعنی چند ساعت باشه بهتره؟

ASP.NET2
سه شنبه 24 آبان 1390, 21:09 عصر
استاندارد اون چنده یعنی چند ساعت باشه بهتره؟
دوس دارید کاربر وقتی تیک Remember Me رو زد چه مدت تو سایتتون Login باقی بمونه؟