ng2-adal-access 是一个供 Angular 2+ 框架使用的 npm 包,它可以简化使用 Microsoft Azure Active Directory(以下简称 AAD)授权的过程。本文将详细介绍如何使用此包,并提供一些示例。
安装
首先,你需要安装 npm 包 ng2-adal-access。在终端上,运行以下命令:
npm install ng2-adal-access --save
导入
在你的应用程序的任何需要使用 AAD 授权的组件中,使用以下代码导入 ng2-adal-access:
import { AdalService } from 'ng2-adal-access';
配置
在组件的构造函数中,添加以下代码:
-- -------------------- ---- ------- ------------------- ------------ ------------ - ----------------------- ------- -------------------------------- -- --- --- --------- ------------------- -- --- ------- -- ------------ ---------------------- - ---- -- --- --- ---------- - ------------------------------ ----------------------------- -- --- ----- --- --- -- -- ---------------------- ---------------------- - ---- -------------- --------------- -- ------ --- -
注:以上代码中的 <your_tenant>、<your_client_id> 和 <your_graph_api_client_id> 应该替换为你的有效值。
使用
ng2-adal-access 对象提供了几个方法来检查用户授权状态以及进行其他操作。以下是其中一些方法的例子:
登录/自动登录
this.adalService.login();
上面的代码在进行登录操作后,会自动重定向到 AAD 登录页面,让用户在那里输入凭据。如果用户已经在之前进行了登录,那么会自动完成登录操作。
注销
this.adalService.logOut();
上面的代码将注销当前用户,并重定向到指定的 postLogoutRedirectUri。
检查授权状态
if (this.adalService.isAuthenticated) { // 用户已经授权 } else { // 用户未授权 }
获取访问令牌
const token = this.adalService.acquireToken('<RESOURCE_NAME>/api');
上面代码中的 <RESOURCE_NAME>
应该替换为你正在访问的 API 的名称,这个名称应该与你在 AAD 中为该应用程序注册的名称匹配。
示例
在组件中使用
-- -------------------- ---- ------- ------ - --------- - ---- ---------------- ------ - ----------- - ---- ------------------ ------------ --------- ----------- --------- - ------- ----------------- ------------------------------------ ------- ------------------ ----------------------------------- -- ------------------------------ ----------------- -- -- ------ ----- ------------ - --------------- - ------ -------- - --- ------------------- ------------ ------------ - ----------------------- ------- -------------------------------- --------- ------------------- ------------ ---------------------- - ---- ---------- - ------------------------------ ----------------------------- -- ---------------------- ---------------------- - ---- -------------- --------------- --- -------------------- - --------------------------------- -- ---------------------- - ------------- - ----------------------------------- - - ------- - ------------------------- - -------- - -------------------------- - -
在服务中使用
-- -------------------- ---- ------- ------ - ---------- - ---- ---------------- ------ - ----------- - ---- ------------------ ------------- ----------- ------- -- ------ ----- --------- - ------- ----------- - --- ------------------- ------------ ------------ - ---------------- - ----------------------------------------------------- - --------- - -- ------------------ - -- -- ---- --------- - ---- - -- --------------------- - - -
结论
ng2-adal-access 是一个非常方便的 npm 包,它在前端应用程序中实现 AAD 授权非常方便。在本文中,我们介绍了如何安装、导入、配置和使用它。希望这篇文章能够帮助你快速学习和使用这个包。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600562d481e8991b448e021e