[英]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.