این فراخوان یک JSON Web Token (JWT) احراز هویت جدید را برمیگرداند که به یک نهاد اجازه میدهد به یک منبع مشخص از طرف کاربر احراز هویت شده در JWT احراز هویت اصلی دسترسی پیدا کند. هنگامی که آن موجودیت نیاز به اقدام از طرف کاربر دارد، از آن برای واگذاری دسترسی دامنهدار به wrap یا باز کردن به نهاد دیگری استفاده میشود.
درخواست HTTP
POST https://<base_url>/delegate
<base_url>
با URL سرویس فهرست کنترل دسترسی کلید (KACLS) جایگزین کنید.
پارامترهای مسیر
هیچ کدام
درخواست بدن
بدنه درخواست حاوی یک نمایش JSON از درخواست است:
نمایندگی JSON | |
---|---|
{ "authentication": string, "authorization": string, "reason": string } |
فیلدها | |
---|---|
authentication | JWT صادر شده توسط شخص ثالث که نشان می دهد کاربر کیست. برای جزئیات بیشتر به بخش احراز هویت مراجعه کنید. |
authorization | یک JWT با ادعای |
reason | یک رشته JSON گذرا که زمینه اضافی را در مورد عملیات ارائه می دهد. JSON ارائه شده باید قبل از نمایش، ضدعفونی شود. حداکثر حجم: 1 کیلوبایت |
مراحل پردازش مورد نیاز
KACLS باید حداقل این مراحل را انجام دهد:
- هم توکن های مجوز و هم تأیید اعتبار را تأیید کنید. برای اطلاعات بیشتر، نشانههای مجوز و نشانههای احراز هویت را ببینید.
- بررسی کنید که نشانههای مجوز و احراز هویت برای یک کاربر باشد. برای اطلاعات بیشتر، به رمزگذاری و رمزگشایی داده ها مراجعه کنید.
- بررسی کنید که ادعای
kacls_url
در کد مجوز با URL فعلی KACLS مطابقت داشته باشد. این اجازه می دهد تا سرورهای بالقوه Man-in-the-Middle را که توسط خودی ها یا ادمین های سرکش دامنه پیکربندی شده اند شناسایی کنید. - اگر ادعای
kacls_owner_domain
در کد مجوز وجود دارد، بررسی کنید که این مقدار با دامنه Google Workspace مالک KACLS مطابقت داشته باشد. این به جلوگیری از ثبت نام KACLS شما توسط کاربران غیرمجاز در Google کمک می کند. - عملیات را ثبت کنید، از جمله کاربر ایجاد کننده آن،
delegated_to
،resource_name
، و دلیل ارسال شده در درخواست. - یک توکن JWT حاوی ادعاهای
delegated_to
وresource_name
از توکن مجوز تولید، امضا و برگردانید.
KACLS برای انجام بررسیهای امنیتی اضافی، از جمله بررسیهای مبتنی بر ادعای JWT، رایگان است.
بدن پاسخگو
در صورت موفقیت آمیز بودن، این روش یک JWT احراز هویت حاوی ادعاهای delegated_to
و resource_name
را برمی گرداند. این توکن بعداً میتواند برای احراز هویت در تماسهای متدهای Wrap و Unwrap استفاده شود. در صورت بروز خطا، یک پاسخ خطای ساختاریافته باید برگردانده شود.
نمایندگی JSON | |
---|---|
{ "delegated_authentication": string } |
فیلدها | |
---|---|
delegated_authentication | یک JWT احراز هویت واگذار شده معتبر برای دسترسی به |
مثال
درخواست کنید
POST https://mykacls.example.com/v1/delegate
{
"authentication": "eyJhbGciOi...",
"authorization": "eyJhbGciOi...delegated_to\":\"other_entity_id\",\"resource_name\":\"meeting_id\"...}",
"reason": "{client:'meet' op:'delegate_access'}"
}
پاسخ
{
"delegated_authentication": "eyJhbGciOi...delegated_to_from_authz_token...resource_name_from_authz_token...}"
}