OnBehalfOfCredential クラス
代理フローを使用してサービス プリンシパルを認証します。
このフローは、通常、委任されたユーザー ID を使用して他のサービスへの要求を承認する中間層サービスによって使用されます。 これは対話型の認証フローではないので、それを使用するアプリケーションは、委任されたアクセス許可に対して管理者の同意を得てから、トークンを要求する必要があります。 代理フローの詳細については、 Azure Active Directory のドキュメントを参照してください 。
- 継承
-
azure.identity._internal.msal_credentials.MsalCredentialOnBehalfOfCredentialazure.identity._internal.get_token_mixin.GetTokenMixinOnBehalfOfCredential
コンストラクター
OnBehalfOfCredential(tenant_id: str, client_id: str, **kwargs: Any)
パラメーター
- client_secret
- str
省略可能。 サービス プリンシパルを認証するためのクライアント シークレット。 client_secretまたはclient_certificateを指定する必要があります。
- client_certificate
- bytes
省略可能。 サービス プリンシパルを認証するための秘密キーを含む PEM または PKCS12 形式の証明書のバイト。 client_secretまたはclient_certificateを指定する必要があります。
- user_assertion
- str
必須。 代理トークンを要求するときに資格情報がユーザー アサーションとして使用するアクセス トークン
- authority
- str
Azure Active Directory エンドポイントの権限 ("login.microsoftonline.com" など)、Azure パブリック クラウドの権限 (既定値)。 AzureAuthorityHosts は、他のクラウドの権限を定義します。
証明書のパスワード。 client_certificateが指定されている場合にのみ使用されます。 この値が Unicode 文字列の場合、UTF-8 としてエンコードされます。 証明書に別のエンコードが必要な場合は、代わりに適切にエンコードされたバイトを渡します。
- disable_instance_discovery
- bool
認証を試みるときにインスタンス検出を実行するかどうかを決定します。 これを true に設定すると、インスタンスの検出と機関の検証の両方が完全に無効になります。 この機能は、プライベート クラウドや Azure Stack など、メタデータ エンドポイントに到達できないシナリオでの使用を目的としています。 インスタンス検出のプロセスでは、 から https://login.microsoft.com/ 機関メタデータを取得して機関を検証する必要があります。 これを True に設定すると、機関の検証は無効になります。 その結果、構成された機関ホストが有効で信頼できることを確認することが重要です。
資格情報がトークンを取得できる指定した "tenant_id" に加えて、テナントを指定します。 ワイルドカード値 "*" を追加して、資格情報がアプリケーションがアクセスできる任意のテナントのトークンを取得できるようにします。
例
OnBehalfOfCredential を作成します。
from azure.identity import OnBehalfOfCredential
credential = OnBehalfOfCredential(
tenant_id="<tenant_id>",
client_id="<client_id>",
client_secret="<client_secret>",
user_assertion="<access_token>",
)
メソッド
close | |
get_token |
スコープのアクセス トークンを要求 します。 このメソッドは、Azure SDK クライアントによって自動的に呼び出されます。 |
close
close() -> None
get_token
スコープのアクセス トークンを要求 します。
このメソッドは、Azure SDK クライアントによって自動的に呼び出されます。
get_token(*scopes: str, claims: str | None = None, tenant_id: str | None = None, **kwargs: Any) -> AccessToken
パラメーター
- scopes
- str
アクセス トークンの目的のスコープ。 このメソッドには、少なくとも 1 つのスコープが必要です。 スコープの詳細については、「」を参照してください https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc。
- claims
- str
承認エラーの後にリソース プロバイダーの要求チャレンジで返される要求など、トークンに必要な追加の要求。
- tenant_id
- str
トークン要求に含めるオプションのテナント。
- enable_cae
- bool
は、要求されたトークンに対して継続的アクセス評価 (CAE) を有効にするかどうかを示します。 既定値は False です。
戻り値
目的のスコープを持つアクセス トークン。
の戻り値の型 :
例外
資格情報は、必要なデータ、状態、またはプラットフォームのサポートがないため、認証を試みることができません
認証に失敗しました。 エラーの message
属性には理由があります。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示