کلید رمزگذاری داده های رمزگذاری شده (DEK) و داده های مرتبط را برمی گرداند.
برای جزئیات بیشتر، به رمزگذاری و رمزگشایی داده ها مراجعه کنید.
درخواست HTTP
POST https:// KACLS_URL /wrap
KACLS_URL
با URL سرویس فهرست کنترل دسترسی کلید (KACLS) جایگزین کنید.
پارامترهای مسیر
هیچ کدام.
درخواست بدن
بدنه درخواست حاوی داده هایی با ساختار زیر است:
نمایندگی JSON | |
---|---|
{ "authentication": string, "authorization": string, "key": string, "reason": string } |
فیلدها | |
---|---|
authentication | JWT صادر شده توسط IdP که نشان می دهد کاربر کیست. به نشانه های احراز هویت مراجعه کنید. |
authorization | JWT ادعا می کند که کاربر مجاز است یک کلید برای |
key | DEK کدگذاری شده با base64. حداکثر حجم: 128 بایت |
reason | یک رشته JSON گذرا که زمینه اضافی را در مورد عملیات ارائه می دهد. JSON ارائه شده باید قبل از نمایش، ضدعفونی شود. حداکثر حجم: 1 کیلوبایت |
بدن پاسخگو
در صورت موفقیت آمیز بودن، این روش یک شی باینری مات را برمی گرداند که توسط Google Workspace در امتداد شی رمزگذاری شده ذخیره می شود و در هر عملیات بازکردن کلید بعدی، همانطور که هست ارسال می شود.
اگر عملیات ناموفق باشد، یک پاسخ خطای ساختاریافته باید برگردانده شود.
شی باینری باید حاوی تنها کپی از DEK رمزگذاری شده باشد، داده های خاص پیاده سازی را می توان در آن ذخیره کرد.
DEK را در سیستم Key Access Control List Service (KACLS) ذخیره نکنید، در عوض آن را رمزگذاری کنید و در شی wrapped_key برگردانید. این از اختلافات مادام العمر بین سند و کلیدهای آن جلوگیری می کند. به عنوان مثال، برای اطمینان از پاک شدن کامل دادههای کاربر هنگام درخواست، یا اطمینان از اینکه نسخههای قبلی بازیابی شده از یک نسخه پشتیبان قابل رمزگشایی هستند.
نمایندگی JSON | |
---|---|
{ "wrapped_key": string } |
فیلدها | |
---|---|
wrapped_key | شی باینری کدگذاری شده با base64. حداکثر حجم: 1 کیلوبایت |
مثال
این مثال یک نمونه درخواست و پاسخ برای متد wrap
ارائه می دهد.
درخواست کنید
POST https://mykacls.example.com/v1/wrap
{
"key":"wHrlNOTI9mU6PBdqiq7EQA==",
"authorization": "eyJhbGciOi…"
"authentication": "eyJhbGciOi…"
"reason": "{client:'drive' op:'update'}"
}
پاسخ
{
"wrapped_key": "3qTh6Mp+svPwYPlnZMyuj8WHTrM59wl/UI50jo61Qt/QubZ9tfsUc1sD62xdg3zgxC9quV4r+y7AkbfIDhbmxGqP64pWbZgFzOkP0JcSn+1xm/CB2E5IknKsAbwbYREGpiHM3nzZu+eLnvlfbzvTnJuJwBpLoPYQcnPvcgm+5gU1j1BjUaNKS/uDn7VbVm7hjbKA3wkniORC2TU2MiHElutnfrEVZ8wQfrCEpuWkOXs98H8QxUK4pBM2ea1xxGj7vREAZZg1x/Ci/E77gHxymnZ/ekhUIih6Pwu75jf+dvKcMnpmdLpwAVlE1G4dNginhFVyV/199llf9jmHasQQuaMFzQ9UMWGjA1Hg2KsaD9e3EL74A5fLkKc2EEmBD5v/aP+1RRZ3ISbTOXvxqYIFCdSFSCfPbUhkc9I2nHS0obEH7Q7KiuagoDqV0cTNXWfCGJ1DtIlGQ9IA6mPDAjX8Lg=="
}