シナリオはAngularJS 1.6.5 SPA、c#WebAPIおよびAzure AD(AAD)です。 Angular-ADALライブラリを使用して、認証ルートと角度ルートを処理してルートを処理しています。奇妙なことに、匿名のルート(経路定義にrequireADLogin: true
は必要ありません)が、バックエンドに行く必要がある(例えば、画像を取得したり、APIからデータを取得するなど)、ADALによって傍受され、バックエンド/ APIにアクセスします。角度ADALは認証されていないルートの認証が必要です
.when('/clasesDeDocumento', {
templateUrl: 'app/views/mantenedores/clasesDeDocumento/clasesDeDocumento.html',
controller: 'clasesDeDocumentoController',
controllerAs: 'vm',
requireADLogin: true,
title: "clases de documentos"
})
そして、上記と同様の、しかしrequiredADLogin: true
なしで保護されていないとき:
私のルートは、私は、ルートが保護したいとき、そのように定義されています。 documentationによると
:requireADLogin =真のプロパティを指定しない
ルートは自動的にanonymousEndpoints配列に追加されます。
保護されていないリンクをクリックしても、Azaure認証ページには移動しませんが、バックエンド/ API要求はインターセプトされ、エラーがスローされます。
私はこれを(手動で)anonymousEndpoints
アレイを追加して解決しましたが、大きなアプリケーションではこれは実現できません。
アイデア?