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