我想使用azure ad& amp ;;将应用部署到我的服务架构的powershell。
我已经设置了所需的azure AD应用程序,但我不知道如何以编程方式登录Azure AD帐户,因此可以从CD工具部署它。看起来这需要是AD用户而不是服务主体。使用AzureAD时,COnnect-ServiceFabric cmdlet需要某种安全令牌,我不知道如何提供它以避免弹出窗口。
答案 0 :(得分:0)
以下是您可以用来启动和运行的步骤 -
1。您需要在AD中创建两个应用注册 - 一个用于表示SF群集,另一个用于客户端应用。您可以按照此处的说明完成Set up Azure Active Directory for client authentication
结果,你应该有下一个输出 -
“azureActiveDirectory”:{“ tenantId ”:“guid”,“ clusterApplication ”:“guid”,“ clientApplication ”:“ guid“}
2。现在您可以设置SF群集了。您可以将上一步中获得的AD工件放入rm模板中,也可以在门户中指定字段。选择权在你手中 -
3。查找在AD的第一步创建的应用注册,并分配给您将要在其中登录某个角色的用户。
4. 最后,使用此示例以非交互模式使用AD身份验证进行登录 - Connect to a secure cluster non-interactively using Azure Active Directory。
以下是相同的,但在Powershell中 -
$authority = "https://login.microsoftonline.com/your_tenant_id"
$credentials = [Microsoft.IdentityModel.Clients.ActiveDirectory.UserCredential]::new($UserName, $Password)
$authContext = [Microsoft.IdentityModel.Clients.ActiveDirectory.AuthenticationContext]::new($authority)
$authResult = $authContext.AcquireTokenAsync($clusterApplicationId, $clientApplicationId, $credentials)
$Token = $authResult.Result.AccessToken
Connect-ServiceFabricCluster -AzureActiveDirectory -SecurityToken $Token -ConnectionEndpoint "your_cluster_name.location.cloudapp.azure.com:19000" -ServerCertThumbprint "your_server_cert_thumbprint"
基本上就是这样。