PDA

View Full Version : سوال: مشکل در تنظیم Membership



V0R73X
جمعه 08 بهمن 1389, 09:16 صبح
با سلام و خسته نباشید.
مختصر و مفید میگم (مثل همیشه):
من میخوام Membership رو تو web.config تنظیم کنم راهشم بلدم منتها:



<membership defaultProvider="DGX">
<providers>
<clear/>
<add name="DGX" type="System.Web.Security.SqlmembershipProvider" ***/>
</providers>
</membership>



اونجایی که ستاره گذاشتم: قائدتا باید بقیه attribute ها رو اضافه کنم؛ همونایی که تنظیماتو در بر میگیرن مثل password format, requires question and answer
ولی مشکل اینجاست که اینا شناخته شده نیستن، یعنی اصلا تو لیستی که VS پایین میندازه و شامل لیست attribute ها است وجود ندارن! به نظر میرسه باید چیزی رو Import کرد ولی نمیدونم چی!
ممنون میشم اگه کمکم کنید تا بفهمم مشکل از کجاست.

Mostafa_Dindar
جمعه 08 بهمن 1389, 10:59 صبح
سلام ,

اینطور امتحان کنید :


<membership>
<providers>
<remove name="AspNetSqlMembershipProvider"/>
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="YourConnectionStringName" enablePasswordRetrieval="true" enablePasswordReset="true" requiresQuestionAndAnswer="true" applicationName="/" requiresUniqueEmail="false" passwordFormat="Encrypted" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression=""/>
</providers>
</membership>

سربلند باشید

V0R73X
شنبه 09 بهمن 1389, 05:26 صبح
با سلام و تشکر.
با این کد اجرا کردم ولی بازم Error میده و بدیهی هم نیست!
یه جایی من یه چیزی درباره استفاده از VS Command Prompet خونده بودم ولی اونجا گفته بود که این برای SQL Server 2008 ورژن کاملشه ولی من Express رو کامپیوترم دارم.
اون دستور رو هم تو Cmd اجرا کردم ولی همونطور که احتمال میدادم عمل نکرد!

Mostafa_Dindar
شنبه 09 بهمن 1389, 07:42 صبح
با سلام و تشکر.
با این کد اجرا کردم ولی بازم Error میده و بدیهی هم نیست!
یه جایی من یه چیزی درباره استفاده از VS Command Prompet خونده بودم ولی اونجا گفته بود که این برای SQL Server 2008 ورژن کاملشه ولی من Express رو کامپیوترم دارم.
اون دستور رو هم تو Cmd اجرا کردم ولی همونطور که احتمال میدادم عمل نکرد!

سلام , در صورتی که از نسخه Express استفاده میکنید نیازی نیست تغیراتی در Web.config ایجاد کنید .
تغیرات بالا در صورتی است که شما از نسخه اصلی SQL 2005 or 2008 استفاده کنید و با استفاده از Command Prompt یا اجرا کردن aspnet_regsql.exe مسیر جداول و Stored Procedures و ... ها را در دیتابیس دیگری به جز ASPNETDB قرار داده باشید . در این حالت نیاز است که تغیرات پیش فرض Machin.config را Override کنید . که پست شماره من در این تاپیک تنها بخشی از اون تغیرات بود .


موفق باشید

V0R73X
شنبه 09 بهمن 1389, 09:44 صبح
سلام , در صورتی که از نسخه Express استفاده میکنید نیازی نیست از تغیراتی در Web.config ایجاد کنید .
تغیرات بالا در صورتی است که شما از نسخه اصلی SQL 2005 or 2008 استفاده کنید و با استفاده از Command Prompt یا اجرا کردن aspnet_regsql.exe مسیر جداول و Stored Procedures و ... ها را در دیتابیس دیگری به جز ASPNETDB قرار داده باشید . در این حالت نیاز است که تغیرات پیش فرض Machin.config را Override کنید . که پست شماره من در این تاپیک تنها بخشی از اون تغیرات بود .


موفق باشید
ممنونم ولی من هنوز جواب سوالم رو نگرفتم! (:
چه طور باید membership رو تنظیم کنم؟

V0R73X
دوشنبه 11 بهمن 1389, 04:39 صبح
یه چیزی: شما برای تنظیم membership خودتون چیزی رو تنظیم میکنید؟

صادق صدقی
دوشنبه 11 بهمن 1389, 18:09 عصر
سلام
این کامله کامله
من خودم مشکل داشتم
اینارو بزار
بعد کانکشن استرینگ ادد کن با نام aspnetdbConnectionString که کانگشنت هم ست باشه



<system.web>
<customErrors mode="Off"/>
<httpRuntime maxRequestLength="1000000" executionTimeout="20000"/>
<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">
<providers>
<add name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="ASPNETDBConnectionString" applicationName="/"/>
</providers>
</membership>
<roleManager enabled="true"
defaultProvider="CustomizedRoleProvider">
<providers>
<add name="CustomizedRoleProvider"
type="System.Web.Security.SqlRoleProvider"
connectionStringName="ASPNETDBConnectionString"
applicationName="/" />
</providers>
</roleManager>
<profile defaultProvider="customizedprofileprovider" enabled="true">
<providers>
<clear />
<add name="customizedprofileprovider"
type="System.Web.Profile.SqlProfileProvider"
connectionStringName="ASPNETDBConnectionString"
applicationName="/"
description="" />
</providers>

<properties>
<add name="name" type="String"/>

</properties>
</profile>

V0R73X
سه شنبه 12 بهمن 1389, 08:46 صبح
دوست عزیز، ممنون از کدهایی که گذاشتی، ولی بهتر بود سوال بنده رو با دقت میخواندید بعد کدها رو میگذاشتید.
ببینید برای اینکه مطلب روشن شه من دوباره مشکلم رو عرض میکنم:
ما تنظیمات مربوط به membership مثل requiresSecurityQuestion و minPasswordLength رو قائدتا باید توسط attributeهای یک عنصر جدید از لیست Providers تنظیم کرد، مثلا به اینصورت:


<providers>
<add name="SqlProvider" type="System.Web.Security.SqlMembershipProvider" ConnectionStringName="YourConString" MinRequiredPasswordLength="2" RequiresQuestionAndPassword="true".../>
</Providers>

منتها مشکل بنده اینست که VS بنده این attribute ها رو مثل اینکه نمیشناسه! چون نه اونارو توی لیست DropDownی که حین کدنویسی ظاهر میشه نشون میده نه اینکه تو membership تاثیری میزاره!!! حتی attribute ConnectionStringName رو هم نمیشناسه!!!
حالا یکی به من بگه چیکار کنم؟؟

V0R73X
جمعه 15 بهمن 1389, 00:45 صبح
نمیخوام آف تاپیک بزارم ولی مشکلم خیلی اساسیه بدون تنظیم این مجبورم یا هرچی میگه بپذیرم با اینکه خودم یه سیستم Membership از Base طراحی کنم!!

V0RTEX
جمعه 15 بهمن 1389, 15:30 عصر
خوب حالا این ممبرشیپ که میگی اصلا چی هست؟

V0RTEX
جمعه 15 بهمن 1389, 16:03 عصر
مثلا منظورت این شکلیه؟


<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices"
enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
applicationName="/" />
اگه اینه که error میده(یا هر چیز دیگه)F7 رو که میزنی یک outputی درست می کنه دیگه اون رو کپی کن بزارش این جا.

راستی مال من هم drop down نمی کنه. :متفکر:

V0R73X
شنبه 16 بهمن 1389, 03:45 صبح
منظورم همینه، منتها تنظیم این membership روی CreateUserWizard اثر میزاره، مگه نه؟ مطمئن نیستما اگه اشتباه میکنم بگین!
من اینو تنظیم میکنم ولی هنوز کنترل CreateUserWizard من مثل قبله: از کاربر SecurityQuestion&Answer میخواد...
اگه membership رو این کنترل اثر نمیزاره بهم بگین چطوری باید ویژگی های این کنترلو که در رابطه با membership هست و تو Properties هم نیست عوض کنم؟

Javad_Darvish_Amiry
یک شنبه 17 بهمن 1389, 19:00 عصر
سلام خسته نباشید. توضیح کامل تنظیمات کانفیگ برای ممبرشیپ تو این صفحه هست. (http://barnamenevis.org/showthread.php?269819-%D8%A7%D8%B2-%D8%A8%DB%8C%D9%86-%D8%B1%D9%81%D8%AA%D9%86-session-%D9%87%D8%A7-%D8%A8%D8%B9%D8%AF-%D8%A7%D8%B2-20-%D8%AF%D9%82%DB%8C%D9%82%D9%87) اما من متوجه منظورتون از این که میفرمایید تاثیری نمیذاره نشدم. اگه منظورتون به اینه که رو کنترل های ASP.NET تاثیر بذاره نه نمیذاره. چون داستانش یه خورده با تصور ما فرق میکنه. اونا کلاس های از پیش نوشته شده ای هستند که طبیعتا تو سازنده یه مقادیری به عنوان دیفالت بهشون داده شده و اساسا کاری به کار کانفیگ یا چیز دیگه ای ندارن و اگه من میخوام اونا ور طبق سلیقه خودم تغییر بدم باید پراپرتی ها رو تنظیم کنم. که لیست پراپرتی ها هم کاملا گویاست و به راحتی میشه تغییرشون داد. در مورد انتلیسنس توی وب.کانفیگ هم فقط به وی اس شما بر نمیگرده. معمولا وی اس تو وب.کانفیگ با اینتلیسنس مشکل داره. حتی خیلی وقتها که مثلا خودم یه شما براش تعریف میکنم که رو مقادیر خودم کار کنه و فایل شما هم تو ریشه پروژه امه باز نمیشناسه. یه خط در میون درست کار میکنه. همون شما رو یه بار میشناسه یه بار که باز و بسته شه دیگه نمیشناسه. زیاد خودتونو درگیر این مسائل نکنید. به هر حال ویندوزه دیگه برادر من. نمیشه همش انتظار کار درست یا درست کار کردن ازش داشت. همیشه یکیو جا میذاره.
اگه قصدتون تغییر کنترل ها (مثل CreateUserWizard که بالا مثال زدید) هست بفرمایید کجا مشکل دارید تا راهنمایی کنیم. کانفگ هم که لیست کامل رو لینک کردم براتون. موفق و موید باشید.

V0R73X
دوشنبه 18 بهمن 1389, 02:17 صبح
سلام دوباره.
مثل همیشه توضیحات شما کامل و نجات دهنده بود، آقای امیری! واقعا ممنونم.
در مورد CreateUserWizard تو صفحه اولش که کاربر میاد ثبت نام کنه ازش به طور Default سوال امنیتی میخواد که بعدا اگه خواست پسورد رو بازیابی کنه با جواب دادن به این سوال بتونه.
حالا ما میخوایم این ویژگی رو برداریم یعنی سوال نکنه، و ضمنا میخوایم توی صفحه اولش یه چیزی (مثلا کد Captcha) اضافه کنیم، آیا چنین چیزی ممکن هست؟
البته میدونم که میشه از خود شیء Membership واسه همه کار استفاده کرد و ویزارد رو هم خودمون میتونیم بسازیم...
منتها میخوام بدونم چنین چیزی ممکن هست؟

Javad_Darvish_Amiry
دوشنبه 18 بهمن 1389, 06:34 صبح
سلام. خواهش میکنم؛ وظیفه ام بود. بله ممکنه. ویزارد قابلیت های زیادی داره که همش یا تو پراپرتی هاست یا تو اون مثلث گوشه اش (اسمش یادم نیست-همون مثلثی که معمولا گوشه سمت راست کنترل ها ظاهر میشد-:خجالت:). حتی میتونید به تمپلیت تبدیلش کنید و همه چیزو توش تغییر بدید. فقط سر به سرش بذارید. جواب سوال شما بله بود که عرض کردم. اما سعی میکنم توضیحات بیشتری اضافه کنم -اگه شد انشالله-. موفق باشید.

V0R73X
سه شنبه 19 بهمن 1389, 06:57 صبح
پس من فقط membership رو تنظیم میکنم و کاری به DropDown ندارم...
این VS هم واقعا چیزیه...
Microsoftه دیگه... :لبخند: