2017-08-09 55 views
0

任何人有任何想法如何进行身份验证,以安全服务织物已AAD使用PowerShell而不会提示输入用户凭据配置? 我试图运行一个脚本VSTS的任务,它需要身份验证安全服务织物。我尝试使用Connect-ServiceFabricCluster和-AzureActiveDirectory,ServerCertThumbprint参数。但它会提示用户凭据。我没有看到任何参数,我可以在脚本中传递用户名和密码。验证到Azure中使用PowerShell安全服务织物无需输入凭据

回答

0

包括SecurityToken参数到Connect-ServiceFabricCluster命令中。 当与AzureActiveDirectory连接,指定的安全令牌直接用于认证和授权,而不是执行交互式用户登录。 下面是如何获得令牌的例子 - 你为什么不使用内置的任务“服务织物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" 
+0

我尝试这样做。但它仍然会提示我输入用户凭据。 – Ssutar

+0

@Ssutar那好吧,你指定连接-ServiceFabricCluster SecurityToken参数?与AzureActiveDirectory连接时,指定的安全令牌直接用于身份验证和授权,而不是执行交互式用户登录 –

0

端点安全吗? “群集连接”允许两个AAD和以标准方式基于证书的认证方法,而不是保持在密码中的脚本,打开泄漏。