نمایش User Name

شروع موضوع توسط mehdi58 ‏2 ژانویه 2006 در انجمن برنامه‌نویسی با ASP.NET

  1. mehdi58

    mehdi58 Member

    ارسال‌ها:
    115
    تشکر شده:
    0
    امتیاز دستاورد:
    16
    سلام

    میخوام وقتی کاربری LOGIN میکنه به هر صفحه ای که رفت user name اش داخل یه LABEL نمایش داده بشه مثل موقعیکه وارد میل یاهو میشیم به هر قسمت میل که مراجعه کنیم باز هم آی دی مون اون بالا توی یه LABEL نمایش داده میشه .
     
    نوشته شده توسط mehdi58 در ‏2 ژانویه 2006
  2. hamid_770

    hamid_770 New Member

    ارسال‌ها:
    25
    تشکر شده:
    7
    امتیاز دستاورد:
    1
    دوست عزيز من ! سلام ! شايد راه هاي زيادي براي اين كار وجود داشته باشد . اما يك روش ساده اين است كه شما يك كوكي ايجاد كنين و نام كاربر رو درون اون قرار بدين . بعد براي مثال ميتونين يك lable بالاي هر صفحه دلخواه ايجاد كرد و مقدار اون رو برابر كوكي تعريف شده قرار داد !
    اگه توضيح بيشتر خواستي بگو !
    قربون همه - حميد
     
    نوشته شده توسط hamid_770 در ‏2 ژانویه 2006
  3. pooriamadani

    pooriamadani New Member

    ارسال‌ها:
    23
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    دوست عزیز آقای حمید ساده تر از cookie استفاده از Session ها است . شما وقتی کاربر شما وصل میشود User انرا در جائی مانند Session["Username"] = "Pooria"; وارد کنید وسپس میتوانید آنرا در هر صفحه ای فراخوانی کنید به شکل زیر :
    label1.Text = Session["Username"].ToString();
    همان طوری که استاد من آقا حمید فرمودند ، از Cookie هم میتوانید استفاده کنید ولی چون به Cookie کاربر شما مستقیما درست رسی دارد گزینش خوبی برای Login نیست و میتواند در مواقعی برای شما ایجاد خطر کند ، نتها حسنی که دارد این است که دیگر فضائی روی سرور شما گرفته نمیشود . ولی از نظر امنیتی برای این موارد حتی در MSDN هم توصیه نشده.
     
    نوشته شده توسط pooriamadani در ‏2 ژانویه 2006
  4. Behrouz_Rad

    Behrouz_Rad Member

    ارسال‌ها:
    48
    تشکر شده:
    0
    امتیاز دستاورد:
    6
    از روش تصدیق هویت Forms Authentication استفاده کن.
    یک User Control ایجاد کن و با Include کردنش در تمامی صفحات مورد نظر و با دستور اسکریپت User.Identity.Name، نام کاربری کاربر رو در تمامی صفحات نشون بده!
    در ضمن، مطلبی رو که از خودتون در میارید، به MSDN نسبت ندید!
    Good Luck
     
    نوشته شده توسط Behrouz_Rad در ‏3 ژانویه 2006
  5. mehdi58

    mehdi58 Member

    ارسال‌ها:
    115
    تشکر شده:
    0
    امتیاز دستاورد:
    16
    بهروز جان میشه یه نمونه کد اینجا بگذاری؟
    ممنون میشم
     
    نوشته شده توسط mehdi58 در ‏3 ژانویه 2006
  6. pooriamadani

    pooriamadani New Member

    ارسال‌ها:
    23
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    جنبا آقای بهروز شما جای استفاد من هستید ، بنده MCSD.NET هستم و فکر کنم 2 برار بر شما MSDN خودنم برو تو Index تو مقاله های Cookieرو قشنگ بخون دقیقا عین جلمه من را نوشته چون Userشما Access کامل برروی Cookie های خودش داره .
    شما هم که MSDN نخوندی زیادی در مورد مطالب دیگران نظر نده
     
    نوشته شده توسط pooriamadani در ‏9 ژانویه 2006
  7. pooriamadani

    pooriamadani New Member

    ارسال‌ها:
    23
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    http://msdn2.microsoft.com/en-us/library/ms178194.aspx
    این هم یک لینک از توی msdn ماکروسافت که نگین از خودم در آوردم ، Tab سمت راست ، حدودا پاین صفحه ، نوشته Cookies and Security
    اونجارو بخونین نوشته :
    Cookies and Security
    The security issues with cookies are similar to those of getting data from the client. In your application, cookies are another form of user input and are therefore subject to examining and spoofing. A user can as a minimum see the data that you store in a cookie, since the cookie is available on the user's own computer. The user can also change the cookie before the browser sends it to you.

    You should never store sensitive data in a cookie, such as user names, passwords, credit card numbers, and so on. Do not put anything in a cookie that should not be in the hands of a user or of someone who might somehow steal the cookie.

    حالا فکر کنم از خودم مطلبی را در نیاوردم ، اینم سند .
     
    نوشته شده توسط pooriamadani در ‏9 ژانویه 2006
  8. Behrouz_Rad

    Behrouz_Rad Member

    ارسال‌ها:
    48
    تشکر شده:
    0
    امتیاز دستاورد:
    6
    من کاری به مدارک شما ندارم و لزومی هم نمی بینم که در مورد مدارکی که بنده در اختیار دارم به دیگران پز بدم.
    این مدارک دلیلی بر سطح سواد فردی نمیشه!
    در ضمن، بهتره بدونی که تمامی فروم های معروف، از کوکی استفاده می کنن.
    بهتره سری به DNN و CS بزنی تا خودت ببینی!
    و این رو هم بدون که UserName جز اطلاعات مهم افراد محسوب نمیشه.
    اون چیزی که مهمه، Credit Number و Password هست!
    همین UserName هم به صورت کد شده، با الگوریتم های Encoding رمزگذاری میشه.
    یکی از این الگوریتم هایی که به وفور استفاده میشه، الگوریتم 128 بیتی و غیر قابل بازگشت MD5 هست که تا به حال کسی نتونسته اون رو هک کنه.
    موفق باشی MSCD.NET جان!
     
    نوشته شده توسط Behrouz_Rad در ‏16 ژانویه 2006
  9. amirlol

    amirlol Active Member

    ارسال‌ها:
    1,859
    تشکر شده:
    298
    امتیاز دستاورد:
    36
    ببینم می خواین یک قراری با هم بزارین همدیگرو بزنین! بابا بیخیال
    اینجا بهتره بخ سوالات جواب بدیم و به کار هم کاری نداشته باشیم !!!
    ببخشید دخالت کردم
    شاد باشید
     
    نوشته شده توسط amirlol در ‏16 ژانویه 2006
  10. pooriamadani

    pooriamadani New Member

    ارسال‌ها:
    23
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    دادش مسله انکه اینطوری حالیت نمیشه ، توی MSDn مایکروسافت ، از زبون خود ماکروسافت ، کردم ، توچست ، آره توی اون Dot netnuke هم از Cookie استفاده میکنند ، ولی این بنده خدا هنوز نمیدونه چطوری یک یوزر رو نمایش بده چه برسه بتونه یک String رو Encod کند ، لازم به ذکر است ، هر Encode میتوان Decode کرد (اگر Encode شده باشد) بدشم پدر من چون اونا استفاده کردن ، دلیلی بر بهتر بودن نمیشه ، تو یک Application از مایکروسافت گیر بیار که از کوکی استفاده کرده باشد .
    حرف من چرت ، حرف مایکروسافت هم چرت ، تو خواستی چیزی از ماکروسافت برات بیارم که آوردم ، حالا تو رعایت نکن به منم مربوط نیست ، من وظیفه خودم میدونستم به اون بنده خداه بگم حالا خواستین رعایت کنین نخواستین به .... .
    منم از سر تفریح میام اینجا کاری هم به User هاش نداردم ، شاد باشید.

    راستی عزیزم اون غیره قابل بازگشت رو قبول دارم ;) ولی عزیزم اون User را با MD5 تغییر بده ، بد بخواد بخونه :)) اونکه قابل برگشت نیست ، چطوری همون Username را دست داخل یک Label نمایش بده ؟

    آره میشه ، User رو توی کوکی Save کرد پسور رو هم با MD5 توی کوکی Save کنید ، ولی هر دفه که User & pass را از کوکی میگیری باید چک کنی که User وارد شده با پسورد ، درست است ، چون کاربر دست رسی دارد و حداقل میتونه تغییر بده ، و همین چک کردن ، روی یک Project بزرگ خیلی خوشگل حالت میگیره .(توی سرعت)

    حالا هرکاری دوست دارید بکنید :(( روز خوش .
     
    نوشته شده توسط pooriamadani در ‏16 ژانویه 2006
  11. Behrouz_Rad

    Behrouz_Rad Member

    ارسال‌ها:
    48
    تشکر شده:
    0
    امتیاز دستاورد:
    6
    دوست خوبم!
    دوست دارم این بحث، به صورت یک بحث علمی بین بنده و شما باشه. بدون تحقیر و توهین.
    یکی از دلایلی که باعث شد از همکاری در این فوروم منصرف بشم، طرز برخورد ناشایست برخی کاربران بود.
    --------------
    و اما...
    باید عرض کنم که عدم اطلاع از مکانیزم تکنیک FormsAuthentication از شما که ادعای مدرک MCSD.NET رو دارید، مایه ی تعجب بسیار است!
    در متنی که جنابعالی از MSDN نقل کردید، در مورد عدم ذخیره ی اطلاعات حساس در کوکی سخن به میان آمده.
    مقصود این بوده که اطلاعات نباید به صورت Plain Text (متن ساده) در کوکی ها ذخیره شوند!
    در این صورت کاربر به راحتی قادر به خواندن محتویات کوکی خواهد بود.
    زمانی که از روش تصدیق هویت FormsAuthentication استفاده می کنید (روش معمول ایجاد بخش تصدیق هویت کاربران در ASP.NET)، پس از تایید اطلاعات شما، یک کوکی که اصطلاحا به اون Ticket گفته میشه بر روی سیستم شما قرار می گیره.
    پس از اون، با ارسال هر درخواست (Request) از جانب کلاینت به سرور، وجود این کوکی در پارامترهای HTTP ارسالی توسط کاربر چک می شود و در صورتی که این کوکی یافت شد، اجازه ی دسترسی به منبع مورد نظر به کاربر داده می شود، در غیر اینصورت، کاربر به صفحه ی لوگین رهنمون خواهد گشت...
    و اما...
    فرمودید که استفاده از کوکی ها رو در فوروم های DNN , CS قبول دارید اما این رو قبول نداشتید که مایکروسافت از این روش در برنامه های مبتنی بر وب خودش استفاده می کنه و خواستار مثالی در این مورد شده بودید!
    خدمت شما عرض می کنم که سایت معروف http:/www.asp.net که سایت رسمی مایکروسافت در زمینه ی ASP.NET هست، از روش تصدیق هویت FormsAuthentication استفاده می کنه.
    کد (Text):

    Copyright © 2005 Microsoft Corporation. All Rights Reserved
     
    در صفحه ی اصلی این سایت، بر روی لینک Log in در گوشه ی سمت راست - بالای صفحه کلیک کنید. در صفحه ای که ظاهر می شود، چک باکسی با عنوان "Automatically keep me signed in" مشاهده می کنید که مطمئنا معنای آن را می دانید.
    شما در حقیقت با این گفته ی خود، استفاده از گزینه ی "یادآوری" در صفحات لوگین تمامی سایت ها را نقض و آن را عملی اشتباه می پندارید!
    و اما توضیح در مورد جمله ی فوق:
    همان گونه که قبلا عرض کردم، الگوریتم MD5 یک الگوریتم غیر قابل بازگشت است.
    روش استفاده از این الگوریتم بدین شکل است که متن کد شده را بازیابی می کنیم. متن اصلی را نیز کد می کنیم و آن را با متن کد شده ی بازیابی شده مقایسه می کنیم.
    در صورتی که هر دوی این متن ها شبیه به هم شدند، آنگاه مقایسه صحیح بوده است.
    به هیچ وجه نیاز به چک کردن مجدد User Name و Password نیست!
    این عمل تنها یک بار و آن هم در هنگام لوگین کاربر انجام می پذیرد و در مرتبه های بعدی، تنها وجود کوکی چک می شود!

    اگر سوالی داشتید در خدمتم.
    موفق باشید دوست MCSD.NET من!
     
    نوشته شده توسط Behrouz_Rad در ‏17 ژانویه 2006
  12. MR.ICEMAN

    MR.ICEMAN New Member

    ارسال‌ها:
    3
    تشکر شده:
    0
    امتیاز دستاورد:
    1
    سلام.
    برای این کار بهتره از قابلیت کوکی و دیتابیس همزمان استفاده کنی به این طریق که یک رشته به صورت random ایجاد میکنی و این رشته را به همراه تاریخ و ساعت login کاربر به دیتابیش وارد میکنی و هم چنین این رشته و شماره کاربر را توسط کوکی در سیستم کاربر ذخیره میکنی . هر ارجا و درخواست از سوی کاربر اطلاعات کوکی را به سرور میفرسته و با کنترل صحت رشته ذخیره شده در کوکی و تاریخ ورود و ساعت ورود ( تارخ و ساعت ذخیره شده در دیتا بیس با تاریخ و ساعت سرور ) که نباید بیش از 8 ساعت از زمان ورود کاربر گذشته باشد. پس از صحت اطلاعات نام کاربری را توسط کد کاربری ذخیره شده در کوکی بیرون کشیده و نمایش میدهید باید دقت کرد که در کوکی هیچ اطلاعات مهمی ذخیره نگردد. " هر روش مطمئنی نیازمند هزینه و صرف وقت زیادی است " MR.ICEMAN Sleety@gmail.com
     
    نوشته شده توسط MR.ICEMAN در ‏22 ژانویه 2006
  13. esmartiz_red

    esmartiz_red Member

    ارسال‌ها:
    197
    تشکر شده:
    26
    امتیاز دستاورد:
    16
    خوب عزیز من درست می گه اگر کاربر قابلیت دریافت کوکی رو تو مرورگرش غیرفعال کنه چی
    پس بهترین گزینه استفاده از سیشن هستش
     
    نوشته شده توسط esmartiz_red در ‏28 دسامبر 2006
  14. MDP

    MDP Active Member

    ارسال‌ها:
    1,540
    تشکر شده:
    1,477
    امتیاز دستاورد:
    36
    ببخشد ولی اگه شما MCSD.Net

    اینجا اساتیدی وجود دارن که 10000 برابر شما و من بلدن.با اینکه مثلا شما شاید مدرک نداشته باشن ولی اونا

    بهتر بلدن

    مدرکترو به روخ دیگران نکش
     
    نوشته شده توسط MDP در ‏28 دسامبر 2006
  15. m_ziba

    m_ziba Member

    ارسال‌ها:
    549
    تشکر شده:
    41
    امتیاز دستاورد:
    16
    mehdi58 بهروز كه جواب شما رو داد كافيه هر جا كه مي خواين استفاده كنيد User.Identity.Name رو بذارين مثلاَ:

    کد (Text):

    Label1.Text = User.Identity.Name
     
    سوال: اصلاَ شما از ASP.NET استفاده مي كنيد؟ يا ASP؟

    دوستان كه بحث رو به انحراف كشيدين لطف كنيد همين جا تمومش كنيد
     
    نوشته شده توسط m_ziba در ‏28 دسامبر 2006
  16. amirlol

    amirlol Active Member

    ارسال‌ها:
    1,859
    تشکر شده:
    298
    امتیاز دستاورد:
    36
    چه بزن بزنیه اینجا
     
    نوشته شده توسط amirlol در ‏29 دسامبر 2006
  17. MDP

    MDP Active Member

    ارسال‌ها:
    1,540
    تشکر شده:
    1,477
    امتیاز دستاورد:
    36
    بچه ها نظزتون راجع به cach یا همون کاشه چیه اونم روش بدکی نیست!!!
     
    نوشته شده توسط MDP در ‏30 دسامبر 2006
  18. m1pfard

    m1pfard Member

    ارسال‌ها:
    406
    تشکر شده:
    119
    امتیاز دستاورد:
    16
    بهتره این بحث به بخش ورزشی (اونم از نوع رزمی ) انتقال داده بشه.
    خوب دو تا راه حل ساده برای یه سوال ساده تر:
    1- استفاده از session
    2- استفاده از User.Identity.Name
    حالا دیگه بقیه این حرفا واسه چیه؟!
     
    نوشته شده توسط m1pfard در ‏30 دسامبر 2006

به اشتراک بگذارید