Yöntem: delegate

Bu çağrı, bir tüzel kişinin orijinal kimlik doğrulama JWT'sinde kimliği doğrulanmış kullanıcı adına belirtilen bir kaynağa erişmesine olanak tanıyan yeni bir kimlik doğrulama JSON Web Token'ı (JWT) döndürür. Bu, kullanıcının adına hareket etmesi gerektiğinde başka bir tüzel kişiye sarma veya sarmayı açma için kapsamlı erişim yetkisi vermek üzere kullanılır.

HTTP isteği

POST https://<base_url>/delegate

<base_url> yerine Anahtar Erişim Kontrol Listesi Hizmeti (KACLS) URL'sini girin.

Yol parametreleri

Yok.

İstek içeriği

İstek metni, isteğin JSON gösterimini içerir:

JSON gösterimi
{
  "authentication": string,
  "authorization": string,
  "reason": string
}
Alanlar
authentication

string

Kullanıcının kim olduğunu onaylayan bir üçüncü tarafça verilen JWT. Ayrıntılar için kimlik doğrulama bölümüne bakın.

authorization

string

delegated_to ve resource_name taleplerini içeren bir JWT. delegated_to talebiyle tanımlanan varlığın, kullanıcı adına resource_name'ye erişmesine izin verildiğini belirtir. Daha fazla bilgi için Yetkilendirme jetonları başlıklı makaleyi inceleyin.

reason

string (UTF-8)

İşlemle ilgili ek bağlam sağlayan bir geçiş JSON dizesi. Sağlanan JSON, gösterilmeden önce temizlenmelidir. Maks. boyut: 1 KB.

Gerekli işleme adımları

KACLS en azından şu adımları uygulamalıdır:

  • Hem yetkilendirme hem de kimlik doğrulama jetonlarını doğrulayın. Daha fazla bilgi için Yetkilendirme jetonları ve Kimlik doğrulama jetonları başlıklı makaleleri inceleyin.
  • Yetkilendirme ve kimlik doğrulama jetonlarının aynı kullanıcıya ait olduğunu kontrol edin. Daha fazla bilgi için Verileri şifreleme ve şifre çözme başlıklı makaleyi inceleyin.
  • Yetkilendirme jetonundaki kacls_url talebinin, mevcut KACLS URL'siyle eşleştiğinden emin olun. Bu sayede, kuruluş içinden kişiler veya kötü niyetli alan yöneticileri tarafından yapılandırılan olası ortadaki adam sunucularının algılanması sağlanır.
  • Yetkilendirme jetonunda kacls_owner_domain iddiası varsa değerin KACLS sahibinin Google Workspace alanıyla eşleştiğini kontrol edin. Bu, yetkisiz kullanıcıların KACLS'nizi Google'a kaydetmesini önlemeye yardımcı olur.
  • İşlemi, başlatan kullanıcı, delegated_to, resource_name ve istekte iletilen neden de dahil olmak üzere kaydedin.
  • Yetkilendirme jetonundan delegated_to ve resource_name taleplerini içeren bir JWT jetonu oluşturun, imzalayın ve döndürün.

KACLS, JWT talebine dayalı olanlar da dahil olmak üzere ek güvenlik kontrollerini ücretsiz olarak gerçekleştirebilir.

Yanıt gövdesi

Başarılı olursa bu yöntem, delegated_to ve resource_name taleplerini içeren bir kimlik doğrulama JWT'si döndürür. Bu jeton daha sonra Wrap ve Unwrap yöntemlerine yapılan çağrılarda kimlik doğrulama için kullanılabilir. Hata durumunda yapılandırılmış hata yanıtı döndürülmelidir.

JSON gösterimi
{
  "delegated_authentication": string
}
Alanlar
delegated_authentication

string

Orijinal kimlik doğrulama JWT'sinde belirtilen kullanıcı tarafından resource_name erişimi için geçerli olan, temsilci kimlik doğrulama JWT'si. Daha fazla bilgi için delegate için KACLS kimlik doğrulama jetonu başlıklı makaleyi inceleyin.

Örnek

İstek

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'}"
}

Yanıt

{
  "delegated_authentication": "eyJhbGciOi...delegated_to_from_authz_token...resource_name_from_authz_token...}"
}