Agere2プロジェクトでADALライブラリを使用して、REST呼び出しを使用して情報を取得するためにWebAPIを呼び出して認証した後、Azure ADに対してユーザーを認証します。これらはすべてAngularJS-AzureAD-WebAPIのシナリオでうまくいきます。ADAL Angular2 appidがJWTトークンにありません(無許可の応答)
は、サンプルプロジェクトを作成するために、MSの記事に続く呼び出しを受けhttps://blogs.msdn.microsoft.com/premier_developer/2017/04/26/using-adal-with-angular2
WebAPIのはAngular2プロジェクトをsfromますが、要求は匿名として認証トークンを持っています。 JWTがappid値を失っていることと、aud属性がアプリケーションIDであるGUIDを保持していることが判明しました。
ワーキングコールJWT:(WebAPIのにAngularJS)
APPID:someone.onmicrosoft.com/CortanaWebAPI
コールJWTを動作していない:Azureの
に AUDを登録してネイティブアプリケーションのGUID (Angular2 to webAPI)
appid:このプロパティのエントリなし
AUD:Azureの
に登録ネイティブアプリケーションアダル設定のGUIDは
const endpoints = {
“https://localhost:44383/”: “http://someone.onmicrosoft.com/CortanaWebAPI”
};
public get getAdalConfig(): any {
return {
tenant: ‘someone.onmicrosoft.com’,
clientId: ‘9d9cd8dd-087a-4e87-b3f9-6e7ded2b5e82’,
redirectUri: window.location.origin + ‘/’,
postLogoutRedirectUri: window.location.origin + ‘/’,
endpoints: endpoints
};
}
なぜこれが起こっているわからない、すべてのヘルプは大歓迎します。
Web APIはAzureにAPiアプリケーションとして、Angular2はネイティブアプリとして登録されています。私は、Angal2プロジェクトでそれを行う方法がわからない、adalサービスにHTTPサービスを注入することに悩まされていると思います。または、Adalサービスに追加しない "ProtectedResourceInterceptor"に関連する可能性があります。私はこのサンプルコードを使用しています。https://github.com/vsaroopchand/angular2-seed –
はい、リンクのコードサンプルはアクセストークンを注入しません。 Azure AD Graphを呼び出すコードサンプル[here](https://github.com/VitorX/angular2-adaljs-graph)を参照できます。問題があればお気軽に教えてください。 –