Есть ли полезные командлеты powershell / rest apis?
Да, но в моем тесте нам нужно сделать это на две части.
1.Установите Sign-on URL
, для этого нам нужно вызвать Microsoft Graph - Update serviceprincipal
.
В графическом обозревателе используйте следующий запрос:
PATCH https://graph.microsoft.com/beta/servicePrincipals/<object-id of the service principal>
{
"loginUrl": "https://azure.signtest.link"
}
Примечание: В приведенном выше запросе необходимо использовать идентификатор объекта субъекта службы (приложение Enterprise), а не приложение AD ( Регистрация приложения). Вы можете найти его в Azure AD на портале -> Enterprise Application
-> найти Tableau Server
-> получить Object ID
, как показано ниже.
2. Установите Identifier
и Reply URL
, мы могли бы сделать это через Powershell Set-AzureADApplication
.
Образец:
$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
Для object-id of the AD App
перейдите к Azure AD на портале -> App registrations
-> найдите Tableau Server
. После выполнения команды параметры будут сопоставлены с приложением предприятия.
Проверьте результат на портале:
Обновление:
Не уверен, если это ошибка, если я создаю новое приложение без настройки Identifier
и Reply URL
вручную на портале, а затем просто используйте приведенную выше команду powershell для их установки, они не будут сопоставлены с порталом.
Но если мы проверим субъект службы (корпоративное приложение) напрямую через Microsoft График, мы можем видеть, что PowerShell на самом деле влияет на принципала службы.
Если сначала мы настроим параметры вручную на портале, то используйте PowerShell для обновите их другими значениями, это работает.
И похоже, что нет способа установить Default Reply URL
через Powershell или API, если мы установите Reply URL
, который отличается от того, который был задан вручную на портале, у него будет приглашение, как показано ниже.
Но если мы посмотрим на это, фактически проверяется опция Default
.
Update2:
В конце концов, я нахожу хитрость, это не ошибка, нам просто нужно сначала установить preferredSingleSignOnMode
для участника службы через Microsoft График, тогда нам не нужно настраивать это на портале вручную.
Пример:
PATCH https://graph.microsoft.com/beta/servicePrincipals/<object-id of the service principal>
{
"preferredSingleSignOnMode":"saml",
"loginUrl": "https://azure.signtest.link"
}