빠른 시작: JavaScript를 사용하여 관리 그룹 만들기

관리 그룹은 여러 구독에서 액세스, 정책 및 규정 준수를 관리하는 데 도움이 되는 컨테이너입니다. 이러한 컨테이너를 만들어 Azure 정책Azure 역할 기반 액세스 제어와 함께 사용할 수 있는 효과적이고 효율적인 계층을 구축합니다. 관리 그룹에 대한 자세한 내용은 Azure 관리 그룹으로 리소스 구성을 참조하세요.

디렉터리에서 만드는 첫 번째 관리 그룹을 완료하려면 최대 15분이 소요될 수 있습니다. 디렉터리에 대해 Azure 내의 관리 그룹 서비스를 설정하기 위해 처음으로 실행되는 프로세스가 있습니다. 프로세스가 완료되면 알림이 수신됩니다. 자세한 내용은 관리 그룹의 초기 설정을 참조하세요.

필수 조건

  • Azure 구독이 없는 경우 시작하기 전에 체험 계정을 만듭니다.

  • 시작하기 전에 Node.js 12 이상 버전이 설치되어 있는지 확인합니다.

  • 테넌트의 모든 Azure AD 사용자는 계층 구조 보호가 활성화되지 않은 경우 해당 사용자에게 할당된 관리 그룹 쓰기 권한 없이 관리 그룹을 만들 수 있습니다. 이 새 관리 그룹은 루트 관리 그룹 또는 기본 관리 그룹의 자식이 되며 작성자에게 "소유자" 역할 할당이 부여됩니다. 관리 그룹 서비스는 이 기능을 허용하므로 루트 수준에서 역할 할당이 필요하지 않습니다. 루트 관리 그룹이 생성될 때 사용자는 액세스할 수 있는 권한이 없습니다. 관리 그룹 사용을 시작하기 위해 Azure AD 전역 관리자를 찾는 장애물을 방지하기 위해 루트 수준에서 초기 관리 그룹을 만들 수 있습니다.

Azure Cloud Shell

Azure는 브라우저를 통해 사용할 수 있는 대화형 셸 환경인 Azure Cloud Shell을 호스트합니다. Cloud Shell에서 Bash 또는 PowerShell을 사용하여 Azure 서비스 작업을 수행할 수 있습니다. 로컬 환경에 아무 것도 설치할 필요 없이 Azure Cloud Shell의 미리 설치된 명령을 사용하여 이 문서의 코드를 실행할 수 있습니다.

Azure Cloud Shell을 시작하려면 다음을 수행합니다.

옵션 예제/링크
코드 또는 명령 블록의 오른쪽 상단에서 시도를 선택합니다. 시도를 선택해도 코드 또는 명령이 Cloud Shell에 자동으로 복사되지 않습니다. Screenshot that shows an example of Try It for Azure Cloud Shell.
https://shell.azure.com으로 이동하거나 Cloud Shell 시작 단추를 선택하여 브라우저에서 Cloud Shell을 엽니다. Button to launch Azure Cloud Shell.
Azure Portal의 오른쪽 위에 있는 메뉴 모음에서 Cloud Shell 단추를 선택합니다. Screenshot that shows the Cloud Shell button in the Azure portal

Azure Cloud Shell을 사용하려면:

  1. Cloud Shell을 시작합니다.

  2. 코드 블록(또는 명령 블록)에서 복사 단추를 선택하여 코드 또는 명령을 복사합니다.

  3. Windows 및 Linux에서 Ctrl+Shift+V를 선택하거나 macOS에서 Cmd+Shift+V를 선택하여 코드 또는 명령을 Cloud Shell 세션에 붙여넣습니다.

  4. Enter를 선택하여 코드 또는 명령을 실행합니다.

애플리케이션 설정

관리 그룹을 관리할 수 있도록 JavaScript를 활성화하려면 환경을 설정해야 합니다. 이 설정은 Windows 10의 bash를 비롯하여 JavaScript를 사용할 수 있는 모든 위치에서 작동합니다.

  1. 다음 명령을 실행하여 새 Node.js 프로젝트를 설정합니다.

    npm init -y
    
  2. yargs 모듈에 참조를 추가합니다.

    npm install yargs
    
  3. Azure Resource Graph 모듈에 참조를 추가합니다.

    npm install @azure/arm-managementgroups
    
  4. Azure 인증 라이브러리에 참조를 추가합니다.

    npm install @azure/identity
    

    참고 항목

    package.json@azure/arm-managementgroups이 버전 2.0.1 이상이고 @azure/identity가 버전 2.0.4 이상인지 확인합니다.

관리 그룹 만들기

  1. index.js라는 새 파일을 만들고 다음 코드를 입력합니다.

       const argv = require("yargs").argv;
       const { InteractiveBrowserCredential } = require("@azure/identity");
       const { ManagementGroupsAPI } = require("@azure/arm-managementgroups");
    
       if (argv.groupID && argv.displayName) {
          const createMG = async () => {
             const credentials = new InteractiveBrowserCredential();
             const client = new ManagementGroupsAPI(credentials);
             const result = await client.managementGroups.beginCreateOrUpdateAndWait(
                argv.groupID,
                {
                   displayName: argv.displayName
                }
             );
             console.log(result);
          };
    
       createMG();
    }
    
  2. 터미널에서 다음 명령을 입력합니다.

    node index.js --groupID "<NEW_MG_GROUP_ID>" --displayName "<NEW_MG_FRIENDLY_NAME>"
    

    각 토큰 <> 자리 표시자는 각각 관리 그룹 ID관리 그룹 식별 이름으로 바꾸어야 합니다.

    스크립트가 인증을 시도할 때 다음 메시지와 유사한 메시지가 터미널에 표시됩니다.

    로그인하려면 웹 브라우저를 사용하여 https://microsoft.com/devicelogin 페이지를 열고 FGB56WJUGK 코드를 입력하여 인증합니다.

    브라우저에서 인증하면 스크립트가 계속 실행됩니다.

관리 그룹 생성 결과는 콘솔에 출력됩니다.

리소스 정리

애플리케이션에서 설치된 라이브러리를 제거하려는 경우 다음 명령을 실행합니다.

npm uninstall @azure/arm-managementgroups @azure/identity yargs

다음 단계

이 빠른 시작에서는 리소스 계층 구조를 구성하기 위한 관리 그룹을 만들었습니다. 관리 그룹은 구독 또는 기타 관리 그룹을 포함할 수 있습니다.

관리 그룹 및 리소스 계층 구조를 관리하는 방법에 대해 자세히 알아보려면 다음을 계속 진행하세요.

관리 그룹으로 리소스 관리