Angular 6 授权 - UI 权限与 API 权限



我正在创建小型的Angular 6应用程序。 我的 Angular UI 显示从 Web API (2.0( 返回的数据。 我已经实现了 JWT 身份验证。

现在我正在 UI 和 API 中实现授权。就像UI中的每个控件一样,它将具有存储在数据库中的权限。此外,对于API中的每个操作,将具有存储在数据库中的权限。一个用户将拥有所有权限集(UI 权限 + API 权限(。

对于 UI/API 授权,我使用令牌来读取权限。在UI中有*ngIf check,在API中有一个自定义fitler AuthorizeAttribute来检查权限。

请让我知道上述方法将非常适合 Angular + API 环境?

对于 Angular 前端应用程序控制,请使用 ngx-permissions 包,因为它为每个元素/路由提供基于角色和权限的控制。权限可以在主应用程序中加载一次,然后 html 元素可以具有*ngxPermissionsOnly="['permission-name']"属性。类似地,可以使用NgxPermissionsGuard实现路由控制。

对于 API 访问控制,如果应用程序使用 JAVA Spring Boot,则可以为每个 REST 端点使用@PreAuthorize注释。

最新更新