如何通过代码设置 Azure Active Directory 服务主体的属性?
How to set properties of Azure Active Directory service principal from code?
我已经从库中创建了 AAD 应用程序。应用程序注册部分有一个,企业应用程序有一个。应用程序注册应用程序指向企业应用程序(本地目录中的托管应用程序)。
我想为企业应用程序配置 SAML SSO。必须设置一些必需的属性。
我可以设置 Sign on URL
(使用图表 api),但我无法设置 Identifier (Entity ID)
和 Reply URL
。我认为这可以完成工作:
Set-AzureADApplication -ObjectId <id of app from App registrations>
-IdentifierUris $Identifiers -ReplyUrls $ReplyUrls
但企业应用未受影响。另外 Set-AzureADServicePrincipal
似乎对我不起作用。
没有错误。刷新后门户上没有任何变化。我已连接到正确的租户并安装了新模块。
我也尝试使用 RM:Update-AzureRmADApplication
、Set-AzureRmADApplication
、Set-AzureRmADServicePrincipal
、Update-AzureRmADServicePrincipal
。
我也找不到工作图 api.
有没有办法从代码中做到这一点?也许我只是做错了什么而它对你有用?我将不胜感激。谢谢
but enterprise app is untouched.
其实企业已经受到影响,我们使用Set-AzureADApplication
后可以通过Microsoft Graph查看,只是没有出现在门户中,可能是一个错误,我不确定.
$Identifiers = @(
"http://www.tableau.com/products/server",
"https://azure.idtest.link"
)
$ReplyUrls = @(
"https://azure.rptest.link/wg/saml/SSO/index.html"
)
Set-AzureADApplication -ObjectId <object-id of the AD App> -IdentifierUris $Identifiers -ReplyUrls $ReplyUrls
如果我们第一次在门户中设置它们,然后再次 运行 命令,您会发现它有效。
并且看起来无法通过 powrshell 或 API 设置 Default Reply URL
,如果我们设置 Reply URL
与在门户中手动设置的不同,它会有如下提示。
但如果我们查看它,实际上会检查 Default
选项。
更新:
最终,我找到了诀窍,这不是错误,我们只需要先通过 Microsoft Graph 为服务主体设置 preferredSingleSignOnMode
,然后我们就不需要在门户中进行配置了手动。
样本:
PATCH https://graph.microsoft.com/beta/servicePrincipals/<object-id of the service principal>
{
"preferredSingleSignOnMode":"saml",
"loginUrl": "https://azure.signtest.link"
}
我已经从库中创建了 AAD 应用程序。应用程序注册部分有一个,企业应用程序有一个。应用程序注册应用程序指向企业应用程序(本地目录中的托管应用程序)。
我想为企业应用程序配置 SAML SSO。必须设置一些必需的属性。
我可以设置 Sign on URL
(使用图表 api),但我无法设置 Identifier (Entity ID)
和 Reply URL
。我认为这可以完成工作:
Set-AzureADApplication -ObjectId <id of app from App registrations>
-IdentifierUris $Identifiers -ReplyUrls $ReplyUrls
但企业应用未受影响。另外 Set-AzureADServicePrincipal
似乎对我不起作用。
没有错误。刷新后门户上没有任何变化。我已连接到正确的租户并安装了新模块。
我也尝试使用 RM:Update-AzureRmADApplication
、Set-AzureRmADApplication
、Set-AzureRmADServicePrincipal
、Update-AzureRmADServicePrincipal
。
我也找不到工作图 api.
有没有办法从代码中做到这一点?也许我只是做错了什么而它对你有用?我将不胜感激。谢谢
but enterprise app is untouched.
其实企业已经受到影响,我们使用Set-AzureADApplication
后可以通过Microsoft Graph查看,只是没有出现在门户中,可能是一个错误,我不确定.
$Identifiers = @(
"http://www.tableau.com/products/server",
"https://azure.idtest.link"
)
$ReplyUrls = @(
"https://azure.rptest.link/wg/saml/SSO/index.html"
)
Set-AzureADApplication -ObjectId <object-id of the AD App> -IdentifierUris $Identifiers -ReplyUrls $ReplyUrls
如果我们第一次在门户中设置它们,然后再次 运行 命令,您会发现它有效。
并且看起来无法通过 powrshell 或 API 设置 Default Reply URL
,如果我们设置 Reply URL
与在门户中手动设置的不同,它会有如下提示。
但如果我们查看它,实际上会检查 Default
选项。
更新:
最终,我找到了诀窍,这不是错误,我们只需要先通过 Microsoft Graph 为服务主体设置 preferredSingleSignOnMode
,然后我们就不需要在门户中进行配置了手动。
样本:
PATCH https://graph.microsoft.com/beta/servicePrincipals/<object-id of the service principal>
{
"preferredSingleSignOnMode":"saml",
"loginUrl": "https://azure.signtest.link"
}