OAuth 2.0: نقش‌ها

چهار نقش در OAuth 2.0 معرفی شده است:

resource owner: موجودیتی که قابلیت دادن دسترسی به منابع محتفظت شده را دارد. وقتی این موجود یک انسان است به او end-user می‌گوییم.

resource server: سروری که منابع محافظت شده در آن قراردارد.

client: نرم افزاری که قصد دریافت اطلاعات محافظت شده را از سرور منابع دارد.

authorization server: سروری که کار دادن توکن دسترسی و زنده نگه داشتن آن را بر عهده دارد، این سرور اغلب همان سرور منابع است اما محدودیتی برای معماری متفاوت وجود ندارد.

مراودات بین این چهار نقش:

     +--------+                               +---------------+
     |        |--(A)- Authorization Request ->|   Resource    |
     |        |                درخواست مجوز   |     Owner     |
     |        |<-(B)-- Authorization Grant ---|               |
     |        |                  اعطای مجوز   +---------------+
     |        |
     |        |                               +---------------+
     |        |--(C)-- Authorization Grant -->| Authorization |
     | Client |                               |     Server    |
     |        |<-(D)----- Access Token -------|               |
     |        |                               +---------------+
     |        |
     |        |                               +---------------+
     |        |--(E)----- Access Token ------>|    Resource   |
     |        |                               |     Server    |
     |        |<-(F)--- Protected Resource ---|               |
     +--------+                               +---------------+
  1. برنامه (application) درخواست احراز هویت (authorization) را برای دسترسی به اطلاعات کاربر ارسال می کند .

  2. اگر کاربر دسترسی برنامه (application) را تائید کند کد (code) تائید برای برنامه ارسال می شود .

  3. برنامه درخواست access token را همراه با کد تائید (code) به سرور ارسال می کند .

  4. اگر اطلاعات برنامه و کد صحیح باشد دسترسی برنامه به اطلاعات کاربر میسر می شود و access token به برنامه داده می شود .

  5. برنامه از طریق access token درخواست خود را به وبسرویس (API) ارسال می کند .

  6. در صورت صحت access token ، درخواست بروی وبسرویس انجام شده و پاسخ بر گردانده می شود .

https://www.hesabit.com/docs/api/oauth2#scopes

درخت مرجع: 

افزودن نظر جدید