azure - 我可以使用 Azure Active Directory 来保存我的应用程序的用户存储吗?
问题描述
我正在为 ERP 需求设计一个解决方案。客户坚持使用AAD对不同应用的用户进行一站式管理。
由于 AAD 具有呈现 Oauth 服务的能力,我打算将它用作我的 OAUTH 服务器并在我的 WebAPI 服务中使用它的令牌。但是想知道如何捕获失败的用户登录尝试,因为我需要应用锁定机制。
当我发现 AAD 也可以通过一些配置来处理这种锁定机制时,我现在想知道我是否可以只将 AAD 用于我的用户存储,这意味着我会将用户、他们的凭据和他们的角色存储在 AAD 中,而我将拥有存储在我的应用程序数据库中的每个角色和其他数据的权限。
这是一个可行的解决方案吗?还是有不同的处理方式?
注意:我们使用的是 noSQL 数据库。
解决方案
是的,这是一个可行的解决方案。您可以使用应用程序角色将角色分配给用户。
您可以通过将应用程序角色添加到应用程序清单来定义它们。然后,您可以将这些角色分配给用户。
"appRoles": [
{
"allowedMemberTypes": [
"User"
],
"description": "Creators can create Surveys",
"displayName": "SurveyCreator",
"id": "1b4f816e-5eaf-48b9-8613-7923830595ad",
"isEnabled": true,
"value": "SurveyCreator"
},
{
"allowedMemberTypes": [
"User"
],
"description": "Administrators can manage the Surveys in their tenant",
"displayName": "SurveyAdmin",
"id": "c20e145e-5459-4a6c-a074-b942bbd4cfe1",
"isEnabled": true,
"value": "SurveyAdmin"
}
],
列出角色的用户列表。
推荐阅读
- asp.net-core - 集成测试:“....LoggingFacility”类型的设施已在容器中注册
- r - 如何在R中一个一个地对文件进行采样而不进行替换
- c# - 设置活动已泄露 IntentReceiver - 缺少 unregisterReceiver()?
- compression - 超快 2 倍有损音频/图像压缩算法?
- c# - docker 容器不分配端口
- python - 如何在 MySQL 中创建数据库,然后将其链接到 Python
- java - 如何填充 HashMap
在 Java 中使用 Stream - javascript - jquery ajax php/mysql - 使用 _POST 方法的简单注册表单
- git - 删除ssh key后如何访问github账号
- node.js - 将 Insall4j 用于简单的服务器(没有 java)