2017-04-12 13 views
2

私は、次の例外を取得: AADSTS90122:ユーザ識別子が存在しないAdalException AADSTS90122:ユーザーIDが存在しない

呼び出し中: authContext.AcquireTokenAsync(RESOURCEID、clientCred、userAssertion)を

フルコード:

ClientCredential clientCred = new ClientCredential(clientId, clientSecret); 
var bootstrapContext = ClaimsPrincipal.Current.Identities.First().BootstrapContext as System.IdentityModel.Tokens.BootstrapContext; 
string userName = ClaimsPrincipal.Current.FindFirst(ClaimTypes.Upn) != null ? ClaimsPrincipal.Current.FindFirst(ClaimTypes.Upn).Value : ClaimsPrincipal.Current.FindFirst(ClaimTypes.Email).Value; 

string userAccessToken = bootstrapContext.Token; 
UserAssertion userAssertion = new UserAssertion(userAccessToken, "urn:ietf:params:oauth:grant-type:jwt-bearer", userName); 
string authority = aadInstance + tenantId; 

AuthenticationContext authContext = new AuthenticationContext(authority, false, null); 

var result = await authContext.AcquireTokenAsync(resourceId, clientCred, userAssertion); 

100%検証済みのパラメータと権利を持つ権利セス。 コードはMONTHSのために働いていましたが、ちょうど昨日ハングし始めました:/

+1

私が直面している問題はまさに問題です。ローカルマシンで7/4/17から作業を停止しましたが、現在はデジカメWebサイトにも失敗しています!それでも解決策を見つけるために – raghav710

+1

これがいくつかのazureADの問題であるかどうかわかりません...私も同じ問題に直面しています。 – Tany

+3

このエラーの調査中ですが、フォローアップが行われます。 – dstrockis

答えて

3

Azure Activeディレクトリのこの問題は修正されているようです。 UserAssertionとClientCredentialsを使用して、ユーザーの代わりにトークンを取得できました(4月13日から)。これは確かに過去数日間行われていませんでした。

関連する問題