ChainedTokenCredential 類別

認證序列,其本身為認證。

get_token 方法會依序呼叫 get_token 序列中的每個認證,並傳回收到的第一個有效權杖。

繼承
azure.identity.aio._internal.AsyncContextManager
ChainedTokenCredential

建構函式

ChainedTokenCredential(*credentials: AsyncTokenCredential)

參數

credentials
<xref:azure.core.credentials.AsyncTokenCredential>
必要

要形成鏈結的認證實例

範例

建立 ChainedTokenCredential。


   from azure.identity.aio import ChainedTokenCredential, EnvironmentCredential, AzureCliCredential

   credential_chain = (
       # Try EnvironmentCredential first
       EnvironmentCredential(),
       # Fallback to Azure CLI if EnvironmentCredential fails
       AzureCliCredential(),
   )
   credential = ChainedTokenCredential(*credential_chain)

方法

close

關閉鏈結中所有認證的傳輸會話。

get_token

以非同步方式從每個認證要求權杖,依序傳回收到的第一個權杖。

如果沒有認證提供權杖,則會 ClientAuthenticationError 從每個認證引發錯誤訊息。

Azure SDK 用戶端會自動呼叫此方法。

close

關閉鏈結中所有認證的傳輸會話。

async close() -> None

get_token

以非同步方式從每個認證要求權杖,依序傳回收到的第一個權杖。

如果沒有認證提供權杖,則會 ClientAuthenticationError 從每個認證引發錯誤訊息。

Azure SDK 用戶端會自動呼叫此方法。

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

參數

scopes
str
必要

存取權杖所需的範圍。 這個方法至少需要一個範圍。 如需範圍的詳細資訊,請參閱 https://learn.microsoft.com/azure/active-directory/develop/scopes-oidc

claims
str

權杖中所需的其他宣告,例如在授權失敗之後,在資源提供者的宣告挑戰中傳回的其他宣告。

tenant_id
str

要包含在權杖要求中的選擇性租使用者。

傳回

具有所需範圍的存取權杖。

傳回類型

例外狀況

鏈結中沒有提供權杖的認證