השיטה הזו עוזרת לכם לבצע מיגרציה מהשירות הישן של רשימת המפתחות של בקרת הגישה (KACLS1) ל-KACLS החדש יותר (KACLS2). הוא מקבל מפתח להצפנת נתונים (DEK) שעטוף ב-API wrap של KACLS1, ומחזיר מפתח DEK שעטוף ב-API wrap של KACLS2.
בקשת HTTP
POST https://KACLS_URL/rewrap
מחליפים את KACLS_URL בכתובת ה-URL של שירות רשימת המפתחות של בקרת הגישה (KACLS).
פרמטרים של נתיב
ללא.
גוף הבקשה
גוף הבקשה מכיל נתונים במבנה הבא:
| ייצוג ב-JSON | |
|---|---|
{ "authorization": string, "original_kacls_url": string, "reason": string, "wrapped_key": string } |
|
| שדות | |
|---|---|
authorization |
JWT שמאשר שלמשתמש יש הרשאה לבטל את העיטוף של מפתח עבור |
original_kacls_url |
כתובת ה-URL של שרת ה-KACLS של wrapped_key הנוכחי. |
reason |
מחרוזת JSON להעברה שמספקת הקשר נוסף לגבי הפעולה. צריך לבצע סניטציה ל-JSON שסופק לפני שמציגים אותו. גודל מקסימלי: 1KB. |
wrapped_key |
האובייקט הבינארי בפורמט Base64 שמוחזר על ידי |
גוף התשובה
אם הפעולה מצליחה, השיטה הזו מחזירה אובייקט בינארי אטום שייאוחסן על ידי Google Workspace לצד האובייקט המוצפן, ויישלח כמו שהוא בכל פעולה עתידית של ביטול ההצפנה של המפתח. היא צריכה גם להחזיר את הגיבוב resource_key_hash בקידוד base64.
אם הפעולה נכשלת, צריך להחזיר תשובה עם שגיאה מובנית.
האובייקט הבינארי צריך להכיל את העותק היחיד של ה-DEK המוצפן, ואפשר לאחסן בו נתונים ספציפיים להטמעה.
אל תאחסנו את ה-DEK במערכת KACLS, אלא הצפינו אותו והחזירו אותו באובייקט wrapped_key. כך נמנעים הבדלים בין מסמך לבין המפתחות שלו. לדוגמה, כדי לוודא שהנתונים של המשתמש יימחקו לגמרי כשהוא יבקש זאת, או כדי לוודא שגרסאות קודמות ששוחזרו מגיבוי יוכלו להיות מפוענחות.
כשמחקקים אובייקטים, Google לא שולחת בקשות מחיקה ל-KACLS.
| ייצוג ב-JSON | |
|---|---|
{ "resource_key_hash": string, "wrapped_key": string } |
|
| שדות | |
|---|---|
resource_key_hash |
אובייקט בינארי בקידוד Base64. ראו גיבוב של מפתח המשאב. |
wrapped_key |
האובייקט הבינארי בקידוד Base64. גודל מקסימלי: 1KB. |
דוגמה
בדוגמה הזו מופיעות בקשה ותשובה לדוגמה של שיטת rewrap.
בקשה
POST https://mykacls.example.com/v1/rewrap
{
"wrapped_key": "7qTh6Mp+svVwYPlnZMyuj8WHTrM59wl/UI50jo61Qt/QubZ9tfsUc1sD62xdg3zgxC9quV4r+y7AkbfIDhbmxGqP64pWbZgFzOkP0JcSn+1xm/CB2E5IknKsAbwbYREGpiHM3nzZu+eLnvlfbzvTnJuJwBpLoPYQcnPvcgm+5gU1j1BjUaNKS/uDn7VbVm7hjbKA3wkniORC2TU2MiHElutnfrEVZ8wQfrCEpuWkOXs98H8QxUK4pBM2ea1xxGj7vREAZZg1x/Ci/E77gHxymnZ/ekhUIih6Pwu75jf+dvKcMnpmdLpwAVlE1G4dNginhFVyV/199llf9jmHasQQuaMFzQ9UMWGjA1Hg2KsaD9e3EL74A5fLkKc2EEmBD5v/aP+1RRZ3ISbTOXvxqYIFCdSFSCfPbUhkc9I2nHS0obEH7Q7KiuagoDqV0cTNXWfCGJ1DtIlGQ9IA6mPDAjX8Lg==",
"authorization": "eyJhbGciOi...",
"original_kacls_url": "https://original.example.com/kacls/v1",
"reason": "{client:'drive' op:'read'}"
}
תשובה
{
"wrapped_key": "3qTh6Mp+svPwYPlnZMyuj8WHTrM59wl/UI50jo61Qt/QubZ9tfsUc1sD62xdg3zgxC9quV4r+y7AkbfIDhbmxGqP64pWbZgFzOkP0JcSn+1xm/CB2E5IknKsAbwbYREGpiHM3nzZu+eLnvlfbzvTnJuJwBpLoPYQcnPvcgm+5gU1j1BjUaNKS/uDn7VbVm7hjbKA3wkniORC2TU2MiHElutnfrEVZ8wQfrCEpuWkOXs98H8QxUK4pBM2ea1xxGj7vREAZZg1x/Ci/E77gHxymnZ/ekhUIih6Pwu75jf+dvKcMnpmdLpwAVlE1G4dNginhFVyV/199llf9jmHasQQuaMFzQ9UMWGjA1Hg2KsaD9e3EL74A5fLkKc2EEmBD5v/aP+1RRZ3ISbTOXvxqYIFCdSFSCfPbUhkc9I2nHS0obEH7Q7KiuagoDqV0cTNXWfCGJ1DtIlGQ9IA6mPDAjX8Lg==",
"resource_key_hash": "SXOyPekBAUI95zuZSuJzsBlK4nO5SuJK4nNCPem5SuI="
}