Azure Active Directory/Angular 2/Adalの専門家がこれを支援できるかどうかわかりませんか。角2 SPA Azure Active Directory JWTの問題
私の設定は次のとおりです。Azure Active Directoryには3つのアプリ登録があります。 1つはWeb API用、1つはWPFアプリケーション用、もう1つはAngular 2 Application用です。
のWeb APIの設定はかなり標準的になります。
<add key="ida:Tenant" value="<tenant>" />
<add key="ida:Audience" value="<ResourceURI>" />
(働いている)WPFアプリケーションの構成は、ここで
<add key="ida:AADInstance" value="https://login.windows.net/{0}"/>
<add key="ida:Tenant" value="<tenant>" />
<add key="ida:RedirectUri" value="<some redirect>" />
<add key="ida:ClientId" value="<client id as configured in Azure>" />
<add key="ApiResourceId" value="<The WEB API resource URI>"/>
<add key="ApiBaseAddress" value="<The base address of the Web API>"/>
あるNG2-ADALと角度2の構成でありますとADAL.js
public get adalConfig(): any {
return {
instance: 'https://login.windows.net/',
tenant: '<tenant>',
clientId: '<client id configured for Angular App in Azure AD>',
redirectUri: '<Angular 2 app Url>',
extraQueryParameter: 'nux=1',
postLogoutRedirectUri: '<Angular 2 app Url>',
cacheLocation: 'localStorage',
loginResource: '<Web API Resource Uri>',
};
角度とWPFの両方がAADにログインし、トークン。
問題は角度2アプリケーションにあります。
(動作する)WPFアプリケーションはAzure Active Directoryに正しくログインでき、JWT(トークン)はWeb APIアプリケーションによって受け入れられ、残りのサービスは正常に呼び出せます。
microsoft.online.com/xxxxxxx経由で、それはこのような主張が含まトークン供給WPFアプリケーションログ:
Header
{
typ: "JWT",
alg: "RS256",
x5t: "_UgqXG_tMLduSJ1T8caHxU7cOtc",
kid: "_UgqXG_tMLduSJ1T8caHxU7cOtc"
}
Payload
{
aud: "<web api resource uri>",
iss: "https://sts.windows.net/1afea43f-3f0b-4a86-ad29-d444b80d2c91/",
iat: 1488889876,
nbf: 1488889876,
exp: 1488893776,
acr: "1",
aio: "NA",
amr: [
"pwd"
]
}
そして、この1のために - AUDパラメータは、Web APIリソースURIであります。そしてそれは私がラッパーであるNG2-アダルを使用しています完全に
に動作します。このように見えるトークンを受信したときに角度2アプリケーションログその中のSO角2用adal.js:
Header
{
typ: "JWT",
alg: "RS256",
x5t: "_UgqXG_tMLduSJ1T8caHxU7cOtc",
kid: "_UgqXG_tMLduSJ1T8caHxU7cOtc"
}
Payload
{
aud: "<angular app client id>",
iss: "https://sts.windows.net/1afea43f-3f0b-4a86-ad29-d444b80d2c91/",
iat: 1488888955,
nbf: 1488888955,
exp: 1488892855,
amr: [
"pwd"
]
}
だから主な違い - と私はなぜ、私はエラーを取得していると考えているWPFアプリケーションのトークンのaudパラメータは正しい視聴者が含まれていますが、角度アプリケーションは、トークンからクライアントIDを返すWeb URIからというリソースURIと一致しないため、401エラーが表示されます。 nこの要求に対して拒否されました
NG2-ADAL(adal.js)を構成して、JWTのaudパラメータにリソースURIを含むトークンを発行するAzureアクティブディレクトリを取得する方法を知っている人はいますか?
私はloginResourceパラメータとエンドポイントコレクションを試しましたが、運はありませんでした。
多くのおかげで...
私はなぜ投票されたのか分かりません。私は何を試してきたのか、何が問題なのか、潜在的な解決策を明確に述べようとしました。 –