我在Azure AD中注册了一个使用证书的应用程序。我正在尝试编写一个可以向应用程序添加新证书的脚本。这可用于在现有证书过期时添加新证书。
我正在尝试使用Azure AD Graph API的AddKey功能。此api的请求主体作为参数'proof',它是由应用程序的现有证书签名的JWT断言。该文件称JWT中的“aud”声明应设置为“AAD Graph SPN”。这里的“AAD Graph SPN”是什么意思?
我尝试使用JWT,其中“aud”设置为“00000002-0000-0000-c000-000000000000”。但我收到以下错误,
{
"odata.error": {
"code":"Authorization_RequestDenied",
"message":{
"lang":"en",
"value":"Insufficient privileges to complete the operation."
}
}
}
对此有何想法?
我通过“Resource Owner Credentials Grant”流程获取访问令牌以调用Azure AD Graph API。要获取访问令牌,我使用的是client_id“1950a258-227b-4e31-a9cf-717495945fc2”(Azure PowerShell的众所周知的客户端ID)
我的脚本(出于部署目的)执行类似下面的操作,
i)如上所述获取访问令牌,并使用初始证书在Azure AD中注册新应用程序。
ii)当初始证书即将到期时,它应该向创建的应用程序添加新证书。