Bagikan melalui


OnBehalfOfCredential Kelas

Mengautentikasi perwakilan layanan melalui alur atas nama.

Alur ini biasanya digunakan oleh layanan tingkat menengah yang mengotorisasi permintaan ke layanan lain dengan identitas pengguna yang didelegasikan. Karena ini bukan alur autentikasi interaktif, aplikasi yang menggunakannya harus memiliki persetujuan admin untuk setiap izin yang didelegasikan sebelum meminta token untuk mereka. Lihat Dokumentasi Azure Active Directory untuk deskripsi yang lebih rinci tentang alur atas nama.

Warisan
azure.identity._internal.msal_credentials.MsalCredential
OnBehalfOfCredential
azure.identity._internal.get_token_mixin.GetTokenMixin
OnBehalfOfCredential

Konstruktor

OnBehalfOfCredential(tenant_id: str, client_id: str, **kwargs: Any)

Parameter

tenant_id
str
Diperlukan

ID penyewa perwakilan layanan. Juga disebut ID "direktori".

client_id
str
Diperlukan

ID klien perwakilan layanan

client_secret
str

Pilihan. Rahasia klien untuk mengautentikasi perwakilan layanan. Baik client_secret atau client_certificate harus disediakan.

client_certificate
bytes

Pilihan. Byte sertifikat dalam format PEM atau PKCS12 termasuk kunci privat untuk mengautentikasi perwakilan layanan. Baik client_secret atau client_certificate harus disediakan.

user_assertion
str

Wajib diisi. Token akses yang akan digunakan kredensial sebagai pernyataan pengguna saat meminta token atas nama

authority
str

Otoritas titik akhir Azure Active Directory, misalnya "login.microsoftonline.com", otoritas untuk Azure Public Cloud (yang merupakan default). AzureAuthorityHosts mendefinisikan otoritas untuk cloud lain.

password
str atau bytes

Kata sandi sertifikat. Digunakan hanya saat client_certificate disediakan. Jika nilai ini adalah string unicode, nilai tersebut akan dikodekan sebagai UTF-8. Jika sertifikat memerlukan pengodean yang berbeda, lewati byte yang dikodekan dengan tepat sebagai gantinya.

disable_instance_discovery
bool

Menentukan apakah penemuan instans dilakukan atau tidak saat mencoba mengautentikasi. Mengatur ini ke true akan sepenuhnya menonaktifkan penemuan instans dan validasi otoritas. Fungsionalitas ini ditujukan untuk digunakan dalam skenario di mana titik akhir metadata tidak dapat dicapai, seperti di cloud privat atau Azure Stack. Proses penemuan instans memerlukan pengambilan metadata otoritas dari https://login.microsoft.com/ untuk memvalidasi otoritas. Dengan mengatur ini ke True, validasi otoritas dinonaktifkan. Akibatnya, sangat penting untuk memastikan bahwa host otoritas yang dikonfigurasi valid dan dapat dipercaya.

additionally_allowed_tenants
List[str]

Menentukan penyewa selain "tenant_id" yang ditentukan yang kredensialnya dapat memperoleh token. Tambahkan nilai kartubebas "*" untuk memungkinkan kredensial memperoleh token untuk penyewa mana pun yang dapat diakses aplikasi.

Contoh

Buat OnBehalfOfCredential.


   from azure.identity import OnBehalfOfCredential

   credential = OnBehalfOfCredential(
       tenant_id="<tenant_id>",
       client_id="<client_id>",
       client_secret="<client_secret>",
       user_assertion="<access_token>",
   )

Metode

close
get_token

Meminta token akses untuk cakupan.

Metode ini dipanggil secara otomatis oleh klien Azure SDK.

close

close() -> None

get_token

Meminta token akses untuk cakupan.

Metode ini dipanggil secara otomatis oleh klien Azure SDK.

get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken

Parameter

scopes
str
Diperlukan

cakupan yang diinginkan untuk token akses. Metode ini memerlukan setidaknya satu cakupan. Untuk informasi selengkapnya tentang cakupan, lihat https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc.

claims
str

klaim tambahan yang diperlukan dalam token, seperti yang dikembalikan dalam tantangan klaim penyedia sumber daya setelah kegagalan otorisasi.

tenant_id
str

penyewa opsional untuk disertakan dalam permintaan token.

enable_cae
bool

menunjukkan apakah akan mengaktifkan Evaluasi Akses Berkelanjutan (CAE) untuk token yang diminta. Default ke False.

Mengembalikan

Token akses dengan cakupan yang diinginkan.

Tipe hasil

Pengecualian

kredensial tidak dapat mencoba autentikasi karena tidak memiliki data, status, atau dukungan platform yang diperlukan

autentikasi gagal. Atribut kesalahan message memberikan alasan.