توکن حامل ( JWT: RFC 7516 ) که توسط شریک هویت (IdP) برای تأیید هویت کاربر صادر شده است.
نمایندگی JSON | |
---|---|
{ "aud": string, "email": string, "exp": string, "iat": string, "iss": string, "google_email": string, ... } |
فیلدها | |
---|---|
aud | مخاطب، همانطور که توسط IdP شناسایی شده است. باید با پیکربندی محلی بررسی شود. |
email | آدرس ایمیل کاربر. |
exp | زمان انقضا. |
iat | زمان صدور. |
iss | صادرکننده توکن باید در برابر مجموعه معتبر صادرکنندگان احراز هویت اعتبارسنجی شود. |
google_email | یک ادعای اختیاری، برای استفاده زمانی که ادعای ایمیل در این JWT با شناسه ایمیل Google Workspace کاربر متفاوت است. این ادعا حاوی هویت ایمیل Google Workspace کاربر است. |
... | سرویس فهرست کنترل دسترسی کلید شما (KACLS) برای استفاده از هرگونه ادعای دیگر (مکان، ادعای سفارشی و غیره) برای ارزیابی محیط آزاد است. |
کد احراز هویت KACLS برای delegate
نشانه احراز هویت حاوی یک رمز وب JSON (JWT) ( JWT: RFC 7516 ) است که یک نشانه تأیید هویت حامل است.
گاهی اوقات یک کاربر قادر به احراز هویت مستقیم روی یک کلاینت نیست. در این موارد کاربر می تواند دسترسی خود را به یک منبع خاص به آن مشتری واگذار کند. این امر از طریق صدور یک توکن احراز هویت واگذار شده جدید که دامنه توکن احراز هویت اصلی را محدود می کند به دست می آید.
توکن احراز هویت واگذار شده مشابه نشانه احراز هویت معمولی با یک ادعای اضافی است:
ادعا | |
---|---|
delegated_to | یک شناسه برای نهادی که باید احراز هویت را به آن واگذار کند. |
ادعای resource_name
در نشانه احراز هویت، در زمینه تفویض اختیار، برای شناسایی شیء رمزگذاری شده توسط کلید رمزگذاری داده (DEK) که تفویض اختیار برای آن معتبر است، استفاده میشود.
توکن توسط سرویس فهرست کنترل دسترسی کلید (KACLS) با استفاده از تماس Delegate
صادر می شود. ممکن است JWTهای خودامضا باشند که KACLS قادر به تایید آنها باشد، یا KACLS ممکن است از هر IdP دیگری برای انجام این کار از طریق یک تماس قابل اعتماد استفاده کند.
برای اینکه رمز احراز هویت تفویض شده معتبر در نظر گرفته شود، باید یک نشانه مجوز تفویض شده برای همان عملیات ارائه شود. نشانه مجوز تفویض شده مشابه نشانه مجوز عادی است، اما حاوی ادعای اضافی delegated_to
است. مقادیر ادعاهای delegated_to
و resource_name
باید با مقادیر موجود در کد احراز هویت واگذار شده مطابقت داشته باشد.
توصیه می کنیم برای جلوگیری از استفاده مجدد احتمالی در صورت نشتی، مقدار طول عمر 15 دقیقه برای توکن های احراز هویت واگذار شده تعیین کنید.
نمایندگی JSON | |
---|---|
{ "email": string, "iss": string, "aud": string, "exp": string, "iat": string, "google_email": string, "delegated_to": string, "resource_name": string ... } |
فیلدها | |
---|---|
email | آدرس ایمیل کاربر با فرمت UTF-8. |
iss | صادرکننده توکن باید در مقابل مجموعه معتبر صادرکنندگان احراز هویت اعتبارسنجی شود. |
aud | مخاطب، همانطور که توسط IdP شناسایی شده است. باید با پیکربندی محلی بررسی شود. |
exp | زمان انقضا، باید بررسی شود. |
iat | زمان صدور، باید بررسی شود. |
delegated_to | یک شناسه برای نهادی که باید احراز هویت را به آن واگذار کند. |
resource_name | یک شناسه برای شی رمزگذاری شده توسط DEK، که تفویض برای آن معتبر است. |
... | KACLS در استفاده از هرگونه ادعای دیگر (مکان، ادعای سفارشی و غیره...) برای ارزیابی محیط آزاد است. |
کد احراز هویت KACLS برای PrivilegedUnwrap
توکن حامل ( JWT: RFC 7516 ) که توسط شریک هویت (IdP) برای تأیید هویت کاربر صادر شده است.
این فقط در PrivilegedUnwrap
استفاده می شود. در طول PrivilegedUnwrap
، اگر یک KACLS JWT به جای یک توکن تأیید هویت IDP استفاده شود، KACLS گیرنده باید ابتدا JWKS صادرکننده را واکشی کند، سپس امضای توکن را قبل از بررسی ادعاها تأیید کند.
نمایندگی JSON | |
---|---|
{ "aud": string, "exp": string, "iat": string, "iss": string, "kacls_url": string, "resource_name": string ... } |
فیلدها | |
---|---|
aud | مخاطب، همانطور که توسط IdP شناسایی شده است. برای عملیات رمزگذاری سمت سرویس گیرنده Drive (CSE) |
exp | زمان انقضا. |
iat | زمان صدور. |
iss | صادرکننده توکن باید در برابر مجموعه معتبر صادرکنندگان احراز هویت اعتبارسنجی شود. باید با |
kacls_url | آدرس اینترنتی KACLS فعلی، که دادهها روی آن رمزگشایی میشوند. |
resource_name | یک شناسه برای شی رمزگذاری شده توسط DEK. حداکثر حجم: 128 بایت |
... | سرویس فهرست کنترل دسترسی کلید شما (KACLS) برای استفاده از هرگونه ادعای دیگر (مکان، ادعای سفارشی و غیره) برای ارزیابی محیط آزاد است. |