نمایش نتایج 1 تا 5 از 5

نام تاپیک: نحوه احراز هویت Client ها به Web Api

  1. #1

    Question نحوه احراز هویت Client ها به Web Api

    سلام


    من در حال یادگیری web api هستم . موردی رو که می خوام بدونم و توی چند مقاله ای که خوندم متاسفانه پیدا نکردم این موضوع هست که ما یک web api طراحی می کنیم و می خواهیم این سرویس را به مثلا ۲۰ شرکت بدهیم اما هر کدام از این شرکت ها یک دسترسی دارند و اینکه نمی خواهیم اگر مستندات سرویس ما را کس دیگه ای داشت به آن دسترسی داشته باشه به این دلیل ما باید یک نام کاربری و رمز عبور به این شرکت ها بدهیم که برای گرفتن سرویس احراز هویت بشوند . این مورد رو می خوام با کد بدونم دقیقا چطور این کار انجام بشه و اینکه client ها به چه صورت باید ( چه کدی ) این نام کاربری و رمز عبور را بدهند تا سرویس ما به آنها داده شود . در WCF می دونم چطور این کار انجام می شه اما web api خیلی گیج هستم داخل این موضوع . ممنون می شم راهنمای جامعی بکنید

    با تشکر

  2. #2

    نقل قول: نحوه احراز هویت Client ها به Web Api

    بهترین روش استفاده از Token است. شما با ارسال نام کاربری و رمز عبور به آدرس www.mysite.com/token یک نشان امنیتی دریافت می کنید.
    (البته این درصورتی که Middleware مروبطه را با OWIN فعال کنید . به پروژه ی خام ویژوال استودیو مراجعه کنید)
    بعد با هر درخواستی که به سرور ارسال می کنید باید این نشان را درون header درخواست ارسال کنید.
    عمل Authorize در Web Api نشان را از هدرهای دریافتی استخراج میکند و هویت کاربر را تشخیص میدهد.

    اگر از پروژه خام ویژوال استودیو استفاده کنید نیاز به تنظیم خاصی ندارید و این سیستم روی پروژه قبلا سوار شده است.
    دقت کنید که برای ارسال نام کاربری و رمز عبور باید از فرمت فرمهای HTML استفاده کنید و از JSON پشتیبانی نمیکند.

    همچنین استفاده از این سیستم بدون HTTPS و SSL ضریب امنیت سیستم را به شدت پایین می آورد.

    اگر از Api در کنار سایت اصلی استفاده می کنید نیاز به ارسال و دریافت token ندارید. وقتی کاربر با صفحه ی ورود به سایت لوگین می کند در Web Api هم وارد شده است و می تواند از متدهای آن استفاده کند. روش بالا برای برنامه های ویندوز یا اپلیکشن های جاوا اسکریپت ، نرم افزارهای گوشی و ... مناسب است.

  3. #3
    کاربر دائمی
    تاریخ عضویت
    مهر 1390
    محل زندگی
    rayancode.ir
    پست
    1,559

    نقل قول: نحوه احراز هویت Client ها به Web Api

    سلام.
    اقای حکیم دقیق توضیح دادن.
    اما من توصیه می کنم کتاب Expert ASP.NET Web API 2 for MVC Developers رو بخونین.
    در فصل 6 بصورت خلاصه میاد توضیح میده و این کد ها رو می نویسه. اما در فصل های بعدی میاد و صورت مساله رو باز می کنه و کامل تر می کنه توضیحات رو.
    موفق باشید

  4. #4

    نقل قول: نحوه احراز هویت Client ها به Web Api

    نقل قول نوشته شده توسط hakim22 مشاهده تاپیک
    بهترین روش استفاده از Token است. شما با ارسال نام کاربری و رمز عبور به آدرس www.mysite.com/token یک نشان امنیتی دریافت می کنید.
    (البته این درصورتی که Middleware مروبطه را با OWIN فعال کنید . به پروژه ی خام ویژوال استودیو مراجعه کنید)
    بعد با هر درخواستی که به سرور ارسال می کنید باید این نشان را درون header درخواست ارسال کنید.
    عمل Authorize در Web Api نشان را از هدرهای دریافتی استخراج میکند و هویت کاربر را تشخیص میدهد.

    اگر از پروژه خام ویژوال استودیو استفاده کنید نیاز به تنظیم خاصی ندارید و این سیستم روی پروژه قبلا سوار شده است.
    دقت کنید که برای ارسال نام کاربری و رمز عبور باید از فرمت فرمهای HTML استفاده کنید و از JSON پشتیبانی نمیکند.

    همچنین استفاده از این سیستم بدون HTTPS و SSL ضریب امنیت سیستم را به شدت پایین می آورد.

    اگر از Api در کنار سایت اصلی استفاده می کنید نیاز به ارسال و دریافت token ندارید. وقتی کاربر با صفحه ی ورود به سایت لوگین می کند در Web Api هم وارد شده است و می تواند از متدهای آن استفاده کند. روش بالا برای برنامه های ویندوز یا اپلیکشن های جاوا اسکریپت ، نرم افزارهای گوشی و ... مناسب است.
    سلام

    خیلی ممنون از شما به خاطر پاسخ خوبتون الان متوجه روند شدم .

    شما فرض رو بر این موضوع بگیرید که ما از پروژه پیش فرض ویژوال استودیو استفاده می کنیم و این موضوع نیاز به تنظیم خاصی نداره . اگر امکانش هست با کد نویسی بفرمایید که من کاربران رو کجا می تونم تعریف کنم و نام کاربری و رمز عبور اختصاص بدم بهشون ؟

    نکته بعد اینه که ما اگر خودمان برای تست کار به عنوان یک client بخواهیم به سرویس وصل بشویم در کد چطور باید این token رو ایجاد کنم و هر بار در header به سرور ارسال کنیم ؟

    این مورد هم برای اینکه همه بتونن این این سرویس استفاده کنند و محدود به خود برنامه نباشه یعنی در یک برنامه ویندوزی هم بشه استفاده کرد .

    در حقیقت اگر امکانش هست روند رو به همراه کد می خوام که یک نمونه کوچک رو پیاده سازی کنم

    تشکر و احترام

  5. #5

    نقل قول: نحوه احراز هویت Client ها به Web Api

    نقل قول نوشته شده توسط jaykob مشاهده تاپیک
    سلام

    خیلی ممنون از شما به خاطر پاسخ خوبتون الان متوجه روند شدم .

    شما فرض رو بر این موضوع بگیرید که ما از پروژه پیش فرض ویژوال استودیو استفاده می کنیم و این موضوع نیاز به تنظیم خاصی نداره . اگر امکانش هست با کد نویسی بفرمایید که من کاربران رو کجا می تونم تعریف کنم و نام کاربری و رمز عبور اختصاص بدم بهشون ؟

    نکته بعد اینه که ما اگر خودمان برای تست کار به عنوان یک client بخواهیم به سرویس وصل بشویم در کد چطور باید این token رو ایجاد کنم و هر بار در header به سرور ارسال کنیم ؟

    این مورد هم برای اینکه همه بتونن این این سرویس استفاده کنند و محدود به خود برنامه نباشه یعنی در یک برنامه ویندوزی هم بشه استفاده کرد .

    در حقیقت اگر امکانش هست روند رو به همراه کد می خوام که یک نمونه کوچک رو پیاده سازی کنم

    تشکر و احترام

    در جواب این سوالتون استفاده از postman رو بهتون پیشنهاد میدم و

تاپیک های مشابه

  1. گفتگو: نحوه احراز هویت کاربران در WINAPP
    نوشته شده توسط M-HONARMAND در بخش C#‎‎
    پاسخ: 3
    آخرین پست: شنبه 01 آبان 1389, 17:05 عصر
  2. سوال: نحوه import کردن جدول ها به صورت رمز دار
    نوشته شده توسط ehsannoorean در بخش Access
    پاسخ: 3
    آخرین پست: چهارشنبه 22 اردیبهشت 1389, 20:07 عصر
  3. نحوه احراز هويت كلاينت ها (Authentication)
    نوشته شده توسط Saeed_m_Farid در بخش توسعه نرم افزار تحت وب
    پاسخ: 0
    آخرین پست: چهارشنبه 09 بهمن 1387, 23:53 عصر
  4. LOGIN شدن client ها به server 2003
    نوشته شده توسط vatal در بخش شبکه و Networking‌
    پاسخ: 3
    آخرین پست: سه شنبه 25 مرداد 1384, 19:16 عصر
  5. نحوه فرستادن پیغام از بانک به Web Form
    نوشته شده توسط faramarz_s در بخش T-SQL
    پاسخ: 3
    آخرین پست: چهارشنبه 26 شهریور 1382, 12:14 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •