0

VSTS 릴리스 파이프 라인이 provisions a new function app with a Managed Service Identity입니다. 내 솔루션에는 내 앱 비밀을위한 공유 키 볼트 인스턴스가 포함되어 있습니다. 키 저장소 allows a maximum of 16 access control entries 그래서 응용 프로그램 서비스 주체를 추가 할 응용 프로그램에 대해 Azure AD 그룹을 만드는 방식을 취했습니다. 모두 똑똑하고 PowerShell에서 로컬로 실행할 수 있지만 VSTS 릴리스 파이프 라인에서 호스트 된 빌드 서버를 사용하고 Azers 릴리스 작업에서 Powershell 실행을 사용하여이 작업을 수행하는 방법을 파악할 수 없습니다.PowerShell을 사용하여 호스트 VSTS 릴리스 파이프 라인의 AAD 그룹에 서비스 보안 주체를 할당하려면 어떻게합니까?

푸른 CLI는 AD 그룹 조작 또는 그래프 API 액세스를 제공하기 위해 표시되지 않습니다 호스팅 2017 빌드 서버 * 1.x에서의 호스팅 서버를 구축하고 2.X에서 버전 1.x에 있습니다 * 2.x does offer az ad group member add하지만, 호스팅 2017 빌드 내 파이프 라인의 다른 곳에서 사용되는 problem with New-AzureStorageTable을 가지고, 그래서 마찬가지로 그것을

을 사용할 수 없습니다 호스팅 빌드 서버에 푸른 RM의 파워 쉘 모듈은 매우 오래되고 doesn't appear to support group membership manipulation입니다. 내가 사용할 수없는 Hosted 2017 서버의 버전은 Get-AzureRmADGroup과 같은 명령이 있지만 그 그룹에 사용자를 추가 할 수는 없습니다.

cmdlet Add-AzureADGroupMember, available in the AAD powershell은 좋은 솔루션이지만 Hosted 또는 Hosted 2017 빌드 서버에서는 사용할 수 없습니다.

릴리스 파이프 라인에서 사용할 수있는 OAuth 토큰을 사용하여 그래프 API에 자동화 런북과 직접 HTTPS 게시물을 모두 고려했지만 PowerShell을 사용하여 릴리스 파이프 라인의 기술 수를 가능한 한 적게 유지하려고합니다. 또한, Login-AzureRmAccount과 같은 PowerShell 명령에서 안전한 방법으로 자격 증명을 저장하는 것을 피하고 내 릴리스 파이프 라인에 대해 정의한 Service Endpoint의 ID를 사용하는 것이 좋습니다.

감사합니다.

답변

0

Hosted 에이전트가 요구 사항을 충족 할 수 없으므로 컴퓨터에 개인 빌드 에이전트 (무료)를 구성 할 수 있습니다 (Deploy an agent on Windows).

Add-AzureADGroupMember cmdlet에 대해서는 Azure PowerShell 작업을 통해 Install-Module -Name AzureAD을 호출하여 설치할 수 있습니다.이 작업은 호스팅 된 에이전트에서 잘 작동합니다.

스크립트 :

Install-PackageProvider -Name NuGet -Force -Scope CurrentUser 
Install-Module -Name AzureAD -Force -Verbose -Scope CurrentUser 
+0

오른쪽,하지만 난 프로그래밍 PAAS 옵션이있는 경우 내 빌드 파이프 라인에 대한 VM의 구축/유지 보수/비용을 복용에 관심이 아니에요. – Josh

+0

Hosted 에이전트에서 Add-AzureADGroupMember cmdlet을 호출하여 회신의 업데이트를 확인할 수 있습니다. –

+0

나는 그것을 시도했지만 다시 시도했다고 생각했다. 'C : \ Program Files \ WindowsPowerShell \ Modules'\ – Josh

관련 문제