2016-11-01 2 views
2

Я пытаюсь опубликовать кластер службы безопасности, защищенный с использованием Azure Active Directory от PowerShell, вызывая Deploy-FabricApplication.ps1 как часть конфигурации сборки TeamCity.Развертывание сервисной ткани, защищенной Azure Active Directory от PowerShell

Мне не удалось найти, как вы предоставляете учетные данные в этой ситуации.

Я заметил в Deploy-FabricApplication.ps1, что для Active Directory есть параметр SecurityToken.

Это то, что вам нужно пройти для аутентификации, и если да, то как вы можете создать токен безопасности в PowerShell?

Я установил пользователя в своем Azure Active Directory для TeamCity, который я могу проверить как аутентификацию.

ответ

2

Маркер может быть получен путем использования Active Directory Библиотека аутентификации (Адал), в частности, путем вызова метода AcquireToken в Microsoft.IdentityModel.Clients.ActiveDirectory.AuthenticationContext.

Хороший пример этого использования можно найти в коде для VSTS Service Fabric Deploy Задача: https://github.com/Microsoft/vsts-tasks/blob/master/Tasks/ServiceFabricDeploy/utilities.ps1.

В этом файле есть функция Get-AadSecurityToken, которая показывает вызов метода AuthenticationContext.AcquireToken.

Вы должны убедиться, что у вас есть и кластера идентификатор приложения и клиента идентификатор приложения. Оба они извлекаются из кластера, вызывая Connect-ServiceFabricCluster с помощью переключателя -GetMetadata (это также выполняется в функции Get-AadSecurityToken).

+0

С небольшой модификацией я смог получить этот код, чтобы сгенерировать мне securityToken без проблем. Когда я передаю этот параметр в сценарий развертывания, он возвращает ошибку: «ВНИМАНИЕ: Невозможно проверить соединение с кластером Service Fabric. Исключение: при System.Management.Automation.MshCommandRuntime.ThrowTerminatingError (ErrorRecord ErrorRecord) Сообщение: Экземпляр соединения Кластер null' – Aaron0

+0

мой плохой, я забыл добавить '. 'перед вызовом скрипта. Спасибо за вашу помощь – Aaron0

Смежные вопросы