簡體   English   中英

Angular應用程序-僅對經過身份驗證的用戶進行訪問

[英]Angular app - restrict access to only authenticated users

我有一個針對Azure Active Directory(AAD)進行身份驗證的Angular4應用程序。 我沒有任何登錄頁面,因為它是由AAD管理的。 我需要的是:如果對該站點的任何請求都未經身份驗證,則將其重定向到AAD登錄頁面。 我知道如何保護路線,但是如何保護整個Angular App?

為了限制在Angular 4應用程序中使用Azure AD的訪問權限,我們可以使用Benbaran提供的Adal-Angular 4庫

您可以參考代碼示例adal-angular4-example來集成此庫。

並且請注意,當您遵循此代碼示例時,會有一個小問題。 app.component.ts中使用adal.Config ,我們需要添加以下行來導入它:

import { adal } from 'adal-angular';

最后我檢查了用戶是否在AppModule ctor中通過了身份驗證:

export class AppModule {
    constructor(private readonly _authService: AuthService) {
        this.useAuthentication();
    }

    private useAuthentication() {
        if (!this._authService.isAuthenticated) {
            this._authService.signIn();
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM