語言

AcquireTokenForClientParameterBuilder 類別

定義

Builder for AcquireTokenForClient(用於客戶端憑證流程、守護程序應用)。 請參閱 https://aka.ms/msal-net-client-credentials

public sealed class AcquireTokenForClientParameterBuilder : Microsoft.Identity.Client.AbstractConfidentialClientAcquireTokenParameterBuilder<Microsoft.Identity.Client.AcquireTokenForClientParameterBuilder>
type AcquireTokenForClientParameterBuilder = class
    inherit AbstractConfidentialClientAcquireTokenParameterBuilder<AcquireTokenForClientParameterBuilder>
Public NotInheritable Class AcquireTokenForClientParameterBuilder
Inherits AbstractConfidentialClientAcquireTokenParameterBuilder(Of AcquireTokenForClientParameterBuilder)
繼承

方法

名稱 Description
ExecuteAsync()

非同步執行 Token 請求。

(繼承來源 BaseAbstractAcquireTokenParameterBuilder<T>)
ExecuteAsync(CancellationToken)

以非同步方式執行 Token 請求,並有可能取消非同步方法。

(繼承來源 AbstractConfidentialClientAcquireTokenParameterBuilder<T>)
Validate()

驗證 AcquireToken 操作的參數。

(繼承來源 AbstractConfidentialClientAcquireTokenParameterBuilder<T>)
WithAdfsAuthority(String, Boolean)

新增一個已知的權威,對應於 ADFS 伺服器。 參見 https://aka.ms/msal-net-adfs。

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)
WithAttributes(String)

指定一個身份屬性,以包含在令牌請求中。 屬性值會在存取權杖權利聲明中以「xms_attr」作為權利主張回傳。 這通常用於 FMI(聯邦管理身份)情境。 範例屬性 json: “{”sg1“:”0000-00000-0001“,”sg2“:[”0000-00000-0002“,”0000-00000-0003“,”0000-00000-0004“]}”

WithAuthority(AadAuthorityAudience, Boolean)
已淘汰.

重要提示:請使用 withTenantID 或 WithTenantIdFromAuthority,或 B2CAuthority 以表示 B2C 權威。

為登入使用者新增已知的 Azure AD 權限,指定登入受眾(雲端為 Azure 公共雲)。 參見 https://aka.ms/msal-net-application-configuration。

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)
WithAuthority(AzureCloudInstance, AadAuthorityAudience, Boolean)
已淘汰.

為應用程式新增已知的 Azure AD 權限,讓使用者登入時指定雲端實例及登入對象。 參見 https://aka.ms/msal-net-application-configuration。

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)
WithAuthority(AzureCloudInstance, Guid, Boolean)
已淘汰.

重要提示:請使用 withTenantID 或 WithTenantIdFromAuthority,或 B2CAuthority 以表示 B2C 權威。

為應用程式新增一個已知的 Azure AD 權限,讓單一組織(單一租戶應用程式)的使用者登入,該權限由其雲端實例和租戶 ID 描述。 參見 https://aka.ms/msal-net-application-configuration。

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)
WithAuthority(AzureCloudInstance, String, Boolean)
已淘汰.

重要提示:請使用 withTenantID 或 WithTenantIdFromAuthority,或 B2CAuthority 以表示 B2C 權威。

為應用程式新增一個已知的 Azure AD 權限,讓單一組織(單一租戶應用程式)的使用者登入,該組織由其雲端實例及網域名稱或租戶 ID 描述。 參見 https://aka.ms/msal-net-application-configuration。

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)
WithAuthority(String, Boolean)
已淘汰.

重要提示:請使用 withTenantID 或 WithTenantIdFromAuthority,或 B2CAuthority 以表示 B2C 權威。

該代幣被請求的特定權限。 傳遞與應用程式建構器設定不同的值,會將選擇範圍縮小到特定租戶。 這不會改變應用程式中設定的值。 這適用於管理多個帳號的應用程式(例如擁有多個信箱的郵件客戶端)。 參見 https://aka.ms/msal-net-application-configuration。

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)
WithAuthority(String, Guid, Boolean)
已淘汰.

重要提示:請使用 withTenantID 或 WithTenantIdFromAuthority,或 B2CAuthority 以表示 B2C 權威。

為應用程式新增已知的 Azure AD 權限,讓單一組織(單一租戶應用程式)的使用者登入,該組織由租戶 ID 指定。 參見 https://aka.ms/msal-net-application-configuration。

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)
WithAuthority(String, String, Boolean)
已淘汰.

重要提示:請使用 withTenantID 或 WithTenantIdFromAuthority,或 B2CAuthority 以表示 B2C 權威。

為應用程式新增一個已知的 Azure AD 權限,讓使用者從單一組織(單一租戶應用程式)登入,該組織以網域名稱描述。 參見 https://aka.ms/msal-net-application-configuration。

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)
WithAzureRegion(Boolean)
已淘汰.

請在 ConfidentialClientApplicationBuilder 物件上使用 WithAzureRegion

WithB2CAuthority(String)

新增一個已知的權威,對應於 Azure AD B2C 政策。 請參閱 https://aka.ms/msal-net-b2c-specificities

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)
WithClaims(String)

在查詢中設定主張。 當 AAD 管理員啟用條件存取時使用。 取得該代幣通常會產生 屬性MsalUiRequiredExceptionClaims設定。 重新嘗試取得代幣,並用這個數值來計算 WithClaims(String) 方法。 詳情請參見https://aka.ms/msal-exceptionshttps://aka.ms/msal-net-claim-challenge。

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)
WithCorrelationId(Guid)

設定驗證請求中使用的相關 ID。 用於追蹤 SDK 與身份提供者服務日誌中的請求。 若未設定,則會隨機產生一個。

(繼承來源 BaseAbstractAcquireTokenParameterBuilder<T>)
WithExtraQueryParameters(Dictionary<String,String>)
已淘汰.

為 HTTP 認證請求中的查詢字串設定額外的查詢參數。

(繼承來源 BaseAbstractAcquireTokenParameterBuilder<T>)
WithExtraQueryParameters(IDictionary<String,ValueTuple<String,Boolean>>)

為 HTTP 認證請求中的查詢字串設定額外查詢參數,並控制快取金鑰中包含哪些參數

(繼承來源 BaseAbstractAcquireTokenParameterBuilder<T>)
WithExtraQueryParameters(String)
已淘汰.

為 HTTP 認證請求中的查詢字串設定額外的查詢參數。

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)
WithFmiPath(String)

會為請求新增一個fmi_path參數。 它會修改標記的主詞。

WithForceRefresh(Boolean)

指定用戶端應用程式在讀取權杖快取時是否應忽略存取權杖。 新的令牌仍會寫入應用程式令牌快取。 預設情況下,權杖會從應用程式的令牌快取中取得(forceRefresh=false)

WithMtlsProofOfPossession()

規定所提供的憑證將用於具備 mTLS(Mutual TLS)認證的 PoP 令牌。 欲了解更多資訊,請參閱 持有證明文件。

WithPreferredAzureRegion(Boolean, String, Boolean)
已淘汰.

請在 ConfidentialClientApplicationBuilder 物件上使用 WithAzureRegion

WithProofOfPossession(PoPAuthenticationConfiguration)
已淘汰.

修改代幣取得請求,使所取得的代幣成為持有證明代幣(PoP),而非持有人代幣。 PoP 標記類似持有憑證,但綁定於 HTTP 請求及密碼金鑰,MSAL 可在 Windows 上管理。 請參閱 https://aka.ms/msal-net-pop

(繼承來源 AbstractConfidentialClientAcquireTokenParameterBuilder<T>)
WithScopes(IEnumerable<String>)

指定要請求哪些範圍。 此方法用於您的應用程式需要指定呼叫受保護 API 所需的作用域。 請參考 <see>https://docs.microsoft.com/azure/active-directory/develop/v2-permissions-and-consent</see> 了解更多關於作用範圍、權限與同意的資訊,以及<>https://docs.microsoft.com/azure/active-directory/develop/msal-v1-app-scopes<>如何為過去暴露 OAuth2 權限的舊有應用程式建立範圍。

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)
WithSendX5C(Boolean)

此方法僅適用於第一方應用程式,並允許指定是否應將 x5c 申請送至 Azure AD。 傳送 x5c 讓應用程式開發者能輕鬆完成 Azure AD 的憑證轉移:此方法會將憑證鏈連同令牌請求一併傳送至 Azure AD,讓 Azure AD 能根據受信任的發行者政策驗證主體名稱。 這樣可以省去應用程式管理員必須明確管理憑證的轉移(無論是透過入口網站還是 PowerShell/CLI 操作)。 如需詳細資訊,請參閱 https://aka.ms/msal-net-sni

WithSignedHttpRequestProofOfPossession(PoPAuthenticationConfiguration)

修改請求以取得簽署 HTTP 請求(SHR)擁有證明(PoP)令牌,而非承載者。 SHR PoP 標記綁定於 HTTP 請求及密碼金鑰,MSAL 在 Windows 上管理該金鑰。 SHR PoP 令牌與用於互助 TLS(mTLS)認證的 mTLS PoP 令牌不同。 如需詳細資訊,請參閱 https://aka.ms/mtls-pop。

(繼承來源 AbstractConfidentialClientAcquireTokenParameterBuilder<T>)
WithTenantId(String)

覆蓋應用程式層級權限中指定的租戶 ID。 此操作會保留權威主機(環境)。

若應用程式層級未指定權限,預設使用的權限為 https://login.microsoftonline.com/common。

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)
WithTenantIdFromAuthority(Uri)

從提供的權限 URI 中擷取租戶 ID,並在應用程式層級覆蓋權限中指定的租戶 ID。 此操作保留提供給應用程式建構者的權限主機(環境)。 若未提供授權給應用程式建構者,此方法將替換預設權限 https://login.microsoftonline.com/common中的租戶 ID。

(繼承來源 AbstractAcquireTokenParameterBuilder<T>)

擴充方法

名稱 Description
OnBeforeTokenRequest<T>(AbstractAcquireTokenParameterBuilder<T>, Func<OnBeforeTokenRequestData,Task>)

介入請求管線,在 MSAL 提出權杖請求前執行使用者提供的代理。 代理者可透過新增或移除主體參數與標頭來修改請求有效載荷。 OnBeforeTokenRequestData

WithAccessTokenSha256ToRefresh(AcquireTokenForClientParameterBuilder, String)

設定 SDK 不會從快取中取出標記,只要該標記的 SHA256 雜湊值相符。 類似於 WithForceRefresh(bool) API,但快取繞過並非所有標記的快取,而是只對 1 個標記進行快取繞過

WithAdditionalCacheParameters<T>(AbstractAcquireTokenParameterBuilder<T>, IEnumerable<String>)

指定從認證回應中取得的額外參數,這些參數通常不包含在快取物件中,並用存取權杖快取。 這些值可從 AdditionalResponseParameters 參數讀取。

WithAttributeTokens<T>(AbstractConfidentialClientAcquireTokenParameterBuilder<T>, IEnumerable<String>)

以 attributeTokensattribute_tokens Body 參數發送,並將它們包含在快取鍵中。 空/空/留白條目會被忽略;空集合或空集合是 no-op。

WithAuthenticationExtension<T>(AbstractAcquireTokenParameterBuilder<T>, MsalAuthenticationExtension)

使用戶端應用程式能提供自訂的認證操作,用於憑證取得請求。

WithCachePartitionKey<T>(BaseAbstractAcquireTokenParameterBuilder<T>, String, String)

在不作為查詢參數的情況下,將鍵值對加入令牌快取金鑰。 利用此方法分割快取的標記(例如,將同一使用者的短命會話與一般會話隔離)。 AcquireTokenByAuthorizationCode兩者 和 AcquireTokenSilent 都必須使用相同的分割鍵來匹配快取的項目。

WithClaimsFromClient<T>(AbstractConfidentialClientAcquireTokenParameterBuilder<T>, String)

指定客戶端提出的權利要求,包含在令牌請求中。 與 WithClaims(String) (伺服器發出的理賠挑戰)不同,客戶端理賠取得的權杖 會被快取, 快取項目則以理賠值為鍵。 不同的理賠值會產生獨立的快取條目。 使用穩定且非動態的值以避免快取無限成長。

WithExtraBodyParameters(AcquireTokenForClientParameterBuilder, Dictionary<String,Func<CancellationToken,Task<String>>>)

在 token 請求中加入額外的 body 參數。 這些參數會加入快取金鑰,以將這些參數與所取得的代幣關聯起來。

WithExtraBodyParameters<T>(AbstractConfidentialClientAcquireTokenParameterBuilder<T>, Dictionary<String,Func<CancellationToken,Task<String>>>)

在 token 請求中加入額外的 body 參數。 這些參數會加入快取金鑰,以將這些參數與所取得的代幣關聯起來。 適用於機密客戶流程(AcquireTokenForClient、AcquireTokenOnBehalfOf、AcquireTokenByAuthorizationCode)。

WithExtraClientAssertionClaims<T>(AbstractAcquireTokenParameterBuilder<T>, String)

規定客戶主張中需包含的額外權利要求。 當客戶提出主張時,這些理賠將與違約理賠合併。 這讓像 Microsoft 這類更高層次的 API 能夠使用。Identity.Web 為客戶主張提供了額外的權利要求。 重要提示:代幣與額外的客戶端斷言聲明相關聯,這會影響快取查詢。 這是一個擴充性 API,應用程式不應直接使用。

WithExtraHttpHeaders<T>(AbstractAcquireTokenParameterBuilder<T>, IDictionary<String,String>)
已淘汰.

為令牌請求新增額外的 Http 標頭。

WithExtraHttpHeaders<T>(AbstractAcquireTokenParameterBuilder<T>, IDictionary<String,String>)

在令牌請求中加入額外的 HTTP 標頭。

WithFmiPathForClientAssertion<T>(AbstractAcquireTokenParameterBuilder<T>, String)

指定用於客戶端斷言的 FMI 路徑。 這讓像 Id.Web 這類高階 API 能提供對 FMI 敏感的憑證。 重要提示:憑證與憑證 FMI 路徑相關聯,影響快取查詢。這是擴充性 API,應用程式不應使用。

WithProofOfPosessionKeyId(AcquireTokenForClientParameterBuilder, String, String)

將標記綁定到快取中的金鑰。 L2 快取金鑰包含金鑰 ID。代幣上不會執行任何密碼學操作。

WithProofOfPosessionKeyId<T>(AbstractAcquireTokenParameterBuilder<T>, String, String)

將標記綁定到快取中的金鑰。代幣上不會執行任何密碼學操作。

適用於