从 PowerShell 部署受 Azure Active Directory 保护的 Service Fabric
Deploying Service Fabric secured by Azure Active Directory from PowerShell
我正在尝试从调用 Deploy-FabricApplication 的 PowerShell 发布到使用 Azure Active Directory 保护的服务结构集群。ps1 作为 TeamCity 构建配置的一部分。
我一直无法找到您在这种情况下如何提供凭据。
我确实在 Deploy-FabricApplication 中注意到。ps1 Active Directory 有一个 SecurityToken 参数。
这是您需要传递给身份验证的内容吗?如果是,您如何在 PowerShell 中生成安全令牌?
我已经在我的 Azure Active Directory 中为 TeamCity 设置了一个用户,我希望以此身份进行身份验证。
令牌可以通过使用 Active Directory 身份验证库 (ADAL) 获取,具体来说是调用 Microsoft.IdentityModel.Clients.ActiveDirectory.AuthenticationContext
中的方法 AcquireToken
。
在 VSTS Service Fabric Deploy 任务的代码中可以看到一个很好的例子:https://github.com/Microsoft/vsts-tasks/blob/master/Tasks/ServiceFabricDeploy/utilities.ps1。
该文件中有一个名为 Get-AadSecurityToken
的函数,它显示了对 AuthenticationContext.AcquireToken
方法的调用。
您需要确保您同时拥有 集群应用程序 ID 和 客户端应用程序 ID。这两个都可以通过使用 -GetMetadata
开关调用 Connect-ServiceFabricCluster
从集群中检索(这也在 Get-AadSecurityToken
函数中完成)。
我正在尝试从调用 Deploy-FabricApplication 的 PowerShell 发布到使用 Azure Active Directory 保护的服务结构集群。ps1 作为 TeamCity 构建配置的一部分。
我一直无法找到您在这种情况下如何提供凭据。
我确实在 Deploy-FabricApplication 中注意到。ps1 Active Directory 有一个 SecurityToken 参数。
这是您需要传递给身份验证的内容吗?如果是,您如何在 PowerShell 中生成安全令牌?
我已经在我的 Azure Active Directory 中为 TeamCity 设置了一个用户,我希望以此身份进行身份验证。
令牌可以通过使用 Active Directory 身份验证库 (ADAL) 获取,具体来说是调用 Microsoft.IdentityModel.Clients.ActiveDirectory.AuthenticationContext
中的方法 AcquireToken
。
在 VSTS Service Fabric Deploy 任务的代码中可以看到一个很好的例子:https://github.com/Microsoft/vsts-tasks/blob/master/Tasks/ServiceFabricDeploy/utilities.ps1。
该文件中有一个名为 Get-AadSecurityToken
的函数,它显示了对 AuthenticationContext.AcquireToken
方法的调用。
您需要确保您同时拥有 集群应用程序 ID 和 客户端应用程序 ID。这两个都可以通过使用 -GetMetadata
开关调用 Connect-ServiceFabricCluster
从集群中检索(这也在 Get-AadSecurityToken
函数中完成)。