我可以以编程方式为Azure服务主体创建新密码吗?

时间:2018-12-20 23:16:34

标签: azure azure-active-directory azure-powershell azure-cli

我正在尝试制作一个对Azure资源进行秘密轮换的程序。我想旋转的秘密之一是服务主体密码。我想知道我是否有能力以编程方式执行以下操作:

  1. 为现有服务主体重新设置密码
  2. 删除现有服务主体的密码

我在C#sdk,REST API,cli或Powershell的文档中找不到任何内容。任何帮助,将不胜感激。谢谢!

4 个答案:

答案 0 :(得分:1)

这是可以通过Azure CLI实现的相对简单的东西。确保已安装Azure CLI 2.0。要管理SP的使用,请执行以下操作:az ad sp(检查它对az ad sp --help的作用)。 要管理凭据,请使用:az ad sp credential(具有可用的删除/列出/重置命令)。使用此CLI命令,您应该能够达到预期的效果。

答案 1 :(得分:1)

Github 上有这个小工具,它通过一个 azure 函数来旋转它。带有托管标识的 C# 代码

https://github.com/3mcloud/azure-keyvault-rotator

https://abschmidt.medium.com/rotating-service-principal-secrets-automatically-in-azure-key-vault-c4f04a84c9af

答案 2 :(得分:0)

尝试下面的powershell命令。

创建新密码:New-AzureADApplicationPasswordCredential

删除密码:Remove-AzureADApplicationPasswordCredential

答案 3 :(得分:0)

Powershell和CLI:

az ad sp credential reset --name <objectid>