从web应用程序访问Azure Management API



是否可以通过web应用程序的客户端ID和密钥访问Azure管理API?

我有一个网络应用程序,我想通过它来管理Azure。我想使用应用程序本身的凭据来完成此操作,这样当前用户就不必是azure管理员。

我已经在订阅中为web应用程序提供了必要的角色,并通过AD中的客户端凭据授予流获得了访问令牌,但我仍然收到了未经授权的令牌。

这可能是因为azure管理API除了委派之外没有权限设置-如果我使用登录用户的授权代码授予流,则访问工作正常,但这不是我想要的。

因此,重申一下,如果给定一个对订阅具有RBAC并能够从AD获得访问令牌的web应用程序,那么在没有交互式用户的情况下,该web应用程序是否能够使用管理API??

是的,您可以从AAD获得服务主体的令牌,并使用该令牌来管理资源,只要该服务主体拥有您所需的所有访问权限。

确保您获得的令牌具有"https://management.azure.com"并且是与订阅关联的tenantId。

您还可以看到Brady Gaster的这篇文章,该文章解释了如何使用Azure AD应用程序从外部应用程序管理Azure服务:http://www.bradygaster.com/post/using-windows-azure-active-directory-to-authenticate-the-management-libraries

编辑:Azure AD支持使用OAuth 2.0客户端凭据的服务对服务调用:https://msdn.microsoft.com/en-us/library/azure/dn645543.aspx

希望这能有所帮助,

朱利安

相关内容

  • 没有找到相关文章

最新更新