[英]Migrate loginWithUsernamePassword to @azure/identity
我將一些代碼從@azure/ms-node-auth遷移到@azure/identity ,它通過loginWithUsernamePassword
對 Azure Active Directory (AAD) 進行身份驗證。 遷移指南指向UsernamePasswordCredential
class,但它拒絕了我的請求。
// Working @azure/ms-node-auth snippet
async function getTokenLegacy(): Promise<string> {
const credentials = await msRestNodeAuth.loginWithUsernamePassword(
USERNAME,
PASSWORD, {
domain: AAD_TENANT_ID,
clientId: CUSTOM_CLIENT_ID,
tokenAudience: CUSTOM_APP_ID,
},
);
return (await credentials.getToken()).accessToken;
}
// Non-working migrated @azure/identity version
async function getTokenMigrated(): Promise<string> {
const credentials = new UsernamePasswordCredential(
AAD_TENANT_ID,
CUSTOM_CLIENT_ID,
USERNAME,
PASSWORD);
return (await credentials.getToken(CUSTOM_APP_ID)).token;
}
發生以下錯誤。
AADSTS50126: Error validating credentials due to invalid username or password.
用戶有一個federated
帳戶, @azure/ms-rest-nodeauth
通過SAML
協議驗證憑據。
UserRealm: VERBOSE: UserRealm response:
UserRealm: VERBOSE: AccountType: federated
UserRealm: VERBOSE: FederationProtocol: wstrust
TokenRequest: VERBOSE: Acquiring token with username password for federated user
...
WSTrustResponse: INFO: Found token of type: urn:oasis:names:tc:SAML:1.0:assertion
TokenRequest: VERBOSE: Performing OAuth assertion grant type exchange.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.