我正在开发一个REST API,将由不同组织中的许多客户使用。更具体地说,组织中的客户端应用程序将连接到REST API以交换信息。多个用户可以使用此客户端应用程序身份验证应由客户端应用程序以不与用户交互的方式处理。
如何通过Azure Active Directory实现这一目标,并考虑到:
此处列出的示例:https://azure.microsoft.com/nl-nl/documentation/articles/active-directory-code-samples/从未完全覆盖此方案:
在守护进程示例中没有用户交互,但是我应该为每个组织创建一个密钥(秘密)。这似乎很难处理。
在其他情况下,始终存在用户互动。
仅在.NET中支持使用用户名和密码进行身份验证而无需用户交互:http://www.cloudidentity.com/blog/2014/07/08/using-adal-net-to-authenticate-users-via-usernamepassword/
任何向我指出正确方向的指导都将受到高度赞赏!
答案 0 :(得分:1)
我认为这个问题误解了守护进程模型。在AAD中,您使用单个密钥创建单个应用程序,然后为每个组织创建服务主体。您只需要一个密钥 - 您可以通过查看访问令牌中的tid声明来识别呼叫组织。