기업에서 관리하는 액세스 그룹 템플릿 생성

자식 계정이 많은 기업에서는 각 계정에 대한 액세스 그룹을 수동으로 구성하는 데 시간이 많이 걸리고 오류가 발생할 수 있습니다. 기업 관리 액세스 그룹 템플릿을 사용하면 시간을 절약하고 모든 계정에서 일관성을 유지할 수 있습니다.

기업 관리자가 하위 계정에 액세스 그룹 템플릿을 할당하면 각 계정에 기업 관리 액세스 그룹이 생성됩니다. 정책, 멤버, 동적 규칙 등 템플릿에 추가하는 관련 속성이 포함됩니다.

멤버

기업 계정에서 액세스 그룹 템플릿을 만들 때, 해당 그룹의 구성원에게 권한을 부여하는 관련 액세스 정책 세트와 함께 기업 사용자 및 서비스 ID를 포함할 수 있습니다. 액세스 그룹 템플릿을 추가한 사용자는 템플릿이 할당된 하위 계정에 초대되어야 액세스 권한을 얻을 수 있습니다. 그러면 사용자가 템플릿을 할당하는 대상 계정의 액세스 그룹에 자동으로 추가됩니다.

액세스 그룹 템플릿에 동적 규칙을 설정하여 특정 ID 속성에 따라 자회사 계정의 연합 사용자를 기업 관리 액세스 그룹에 자동으로 추가합니다.

기본적으로, 하위 계정의 그룹 관리자는 자신의 계정에 있는 기업 관리 액세스 그룹에 구성원을 추가할 수 없습니다. 이 기능을 활성화하려면, 기업 계정 관리자가 액션 컨트롤을 사용하여 액세스 그룹 템플릿에서 이 동작을 설정해야 합니다. 이 액션 컨트롤을 활성화하면 액세스 그룹 관리자가 해당 구성원이 액세스 그룹 템플릿에 정의되어 있지 않더라도 자신의 계정에 있는 그룹에 구성원을 추가할 수 있습니다. 자세한 내용은 멤버를 위한 액션 컨트롤을 참고하세요.

시작하기 전에

  • 기업 관리형 IAM 템플릿이 기업을 더 안전하게 만드는 방법에 대해 알아보려면 기업 관리형 IAM 액세스의 작동 방식을 참조하십시오.

  • 기업 계정 관리자가 되어야만 기업 관리 IAM 템플릿을 생성하고 할당할 수 있습니다.

  • 기업 관리형 IAM 템플릿을 생성하려면 다음 액세스 권한이 할당되어 있는지 확인하십시오

    • 모든 IAM 계정 관리 서비스에서 ‘템플릿 관리자’ 역할을 가진 정책
  • 기업 관리 IAM 템플릿을 하위 계정에 할당하려면 다음 액세스 권한이 할당되어 있는지 확인하십시오

    • 모든 IAM 계정 관리 서비스에 대한 템플릿 할당 관리자 역할이 있는 정책
    • 엔터프라이즈 서비스에서 최소한 뷰어 역할이 있는 정책

    기본적으로, 계정 소유자를 포함하여 템플릿 관리자 또는 템플릿 할당 관리자 역할이 있는 사용자는 없습니다.

  • 기업 내 신규 및 기존 계정은 기업 관리형 IAM에 가입해야 합니다. 더 자세한 정보를 원하시면, 기업 관리형 IAM을 선택하는 방법을 참고하세요.

액세스 그룹 템플릿 만들기

자식 계정이 많거나, 계정 간에 공통적인 접근 요구 사항이 있거나, 엄격한 보안 요구 사항이 있는 경우, 접근 그룹 템플릿을 사용하는 것을 고려해 보십시오.

액세스 그룹 템플릿을 만들려면 다음 단계를 따르십시오

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.

  2. 작성을 클릭하십시오.

  3. 기업 사용자를 위한 액세스 그룹 템플릿의 목적과 설명을 입력합니다.

  4. 자식 계정 사용자를 위한 기업 관리 액세스 그룹의 목적에 대한 설명과 이름을 입력합니다. 하위 계정에 있는 기존 액세스 그룹과 중복되지 않는 고유한 액세스 그룹 이름을 사용하십시오.

    계정에 충돌하는 액세스 그룹 이름이 포함되어 있는 경우 템플릿을 할당할 때 오류가 발생합니다.

  5. 작성을 클릭하십시오.

(선택 사항) 멤버 추가

템플릿에 추가하는 기업 멤버는 기업 계정과 자회사 계정 모두에 있어야 합니다. 기업 사용자가 템플릿을 할당하는 하위 계정의 구성원이 아닌 경우, 해당 사용자를 하위 계정에 추가하십시오.

액세스 그룹 관리자 자녀 계정에서 액세스 그룹 관리자는 회원 추가 액션 제어를 활성화하면 자신의 계정에 액세스 그룹에 회원을 추가할 수 있습니다. 이렇게 하면 하위 계정의 액세스 그룹 관리자에게 멤버십 관리를 위임할 수 있습니다.

액세스 그룹 템플릿에 기업 멤버를 추가하려면 다음 단계를 완료하십시오

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.

  2. 액세스 그룹 템플릿을 선택하십시오.

  3. 회원 > 추가를 클릭합니다.

  4. 접근 권한이 필요한 사용자를 선택합니다.

  5. 추가 를 클릭하십시오.

  6. 서비스 ID > 추가를 클릭하여 서비스 ID를 추가합니다.

  7. 하위 계정에서 액세스가 필요한 서비스 ID를 선택합니다.

    스크립트를 사용하는 팀은 계정 설정을 자동화하는 데 도움이 되도록 서비스 ID를 추가할 수 있습니다.

조치 제어

기본적으로, 하위 계정의 그룹 관리자는 자신의 계정에서 기업 관리 액세스 그룹의 구성원을 추가하거나 제거할 수 없습니다. 기업 사용자로서 템플릿에 추가할 수 없는 계정의 구성원을 포함할 수 있도록 구성원 추가를 허용할 수 있습니다. 액세스 그룹 관리자는 액세스 그룹에 속한 사람이 조직을 떠날 때 자신이 추가한 구성원을 언제든지 제거할 수 있습니다.

기본 동작을 변경하려면 다음 단계를 따르십시오

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.
  2. 액세스 그룹 템플릿을 선택하십시오.
  3. '회원'을 클릭하세요.
  • 액세스 그룹 관리자가 자신의 계정에 있는 엔터프라이즈 관리 액세스 그룹에 구성원을 추가할 수 있도록 구성원 추가에 대한 액션 제어를 예로 설정합니다. 액세스 그룹 관리자는 자신이 추가한 구성원을 제거할 수 있습니다.
  • 액세스 그룹 관리자가 기업에서 추가한 기업 관리 액세스 그룹의 구성원을 자신의 계정에서 제거할 수 있도록 하려면 구성원 제거에 대한 작업 제어를 예로 설정합니다. 이 액션 컨트롤은 액세스 그룹 관리자가 그룹에 추가한 구성원에게는 영향을 미치지 않습니다.

(선택 사항) 동적 규칙 추가

특정 신원 속성을 기준으로 하위 계정의 연동 사용자를 엔터프라이즈 관리 액세스 그룹에 자동으로 추가하는 동적 규칙을 생성할 수 있습니다. ID 공급자( IdP ) 내에서 설정된 데이터와 일치해야 하고 로그인 시 사용자의 연합 ID와 함께 전달되는 조건을 설정합니다. 동적 규칙을 추가하기 전에 외부 ID 공급자로부터 인증을 활성화해야 합니다.

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.

  2. 액세스 그룹 템플릿을 선택하십시오.

  3. '동적 규칙' > '추가'를 클릭합니다.

  4. 동적 규칙에 어떤 종류의 사용자를 액세스 그룹에 추가하는지를 설명하는 이름을 지정하십시오.

  5. 인증 방법으로 ‘ 다음에 의해 연동된 사용자 IBMid ’ 또는 ‘ 다음에 의해 연동된 사용자 IBM Cloud® App ID ’를 선택하고, ID 제공자(IdP)를 입력하십시오.

  6. IdP 데이터를 기반으로 조건을 추가하여 그룹에 추가할 연합 사용자를 정의합니다.

    1. 조건 추가를 클릭하면 다중 조건을 정의할 수 있습니다. 연합된 사용자는 액세스 그룹의 멤버가 되기 위한 모든 조건을 충족해야 합니다. 조건을 작성하는 데 사용되는 필드에 대한 자세한 정보는 IAM 조건 특성의 내용을 참조하십시오.
  7. 세션 기간을 시간 단위로 설정합니다.

    이 기간이 만료되면 액세스 그룹의 구성원 자격이 취소됩니다. 사용자는 로그인해야만 액세스 그룹 멤버십을 갱신할 수 있습니다.

조치 제어

기본적으로, 액세스 그룹 관리자는 기업 관리 액세스 그룹에 대한 동적 규칙을 추가, 제거 또는 업데이트할 수 없습니다.

규칙 추가의 기본 동작을 변경하려면 다음 단계를 완료하십시오

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.
  2. 액세스 그룹 템플릿을 선택하십시오.
  3. 동적 규칙을 클릭합니다.
    • 동적 규칙 추가 에 대한 작업 제어를 예로 설정하면 액세스 그룹 관리자가 자신의 계정에서 엔터프라이즈 관리 액세스 그룹에 동적 규칙을 추가할 수 있습니다. 액세스 그룹 관리자는 자신이 추가한 동적 규칙을 제거하거나 업데이트할 수 있습니다.

기업 관리 규칙을 제거하고 업데이트하는 기본 동작을 변경하려면 다음 단계를 완료하십시오

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.
  2. 액세스 그룹 템플릿을 선택하십시오.
  3. 동적 규칙을 클릭합니다.
    • 동적 규칙 제거에 대한 액션 제어를 예로 설정하여 액세스 그룹 관리자가 기업에서 추가한 동적 규칙을 자신의 계정에 있는 기업 관리 액세스 그룹에서 제거할 수 있도록 합니다. 이 액션 컨트롤은 액세스 그룹 관리자가 그룹에 추가하는 동적 규칙에는 영향을 미치지 않습니다.
    • 엔터프라이즈에서 추가한 계정의 엔터프라이즈 관리 액세스 그룹에 대한 동적 규칙을 액세스 그룹 관리자가 업데이트할 수 있도록 하려면 동적 규칙 업데이트 에 대한 작업 제어를 예로 설정합니다. 이 액션 컨트롤은 하위 계정의 그룹 관리자에 액세스하는 동적 규칙에는 영향을 미치지 않습니다.
  4. 특정 동적 규칙에 대한 작업 제어를 구성합니다.
    1. 동적 규칙을 클릭합니다.
      • 동적 규칙 제거 에 대한 작업 제어를 예로 설정하면 자식 계정의 액세스 그룹 관리자가 이 특정 동적 규칙을 제거할 수 있습니다.
      • 자식 계정의 액세스 그룹 관리자가 이 특정 동적 규칙을 업데이트할 수 있도록 하려면 동적 규칙 업데이트 에 대한 작업 제어를 예로 설정합니다.
    2. 저장 을 클릭하십시오.

(선택 사항) 접근 정책 추가

액세스 정책은 기업 관리 액세스 그룹의 구성원에게 하위 계정에 대한 액세스 권한을 부여합니다.

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.

  2. 액세스 그룹 템플릿을 선택하십시오.

  3. 액세스 > 추가를 클릭합니다.

  4. 기존 정책 템플릿을 선택하고 추가를 클릭합니다.

  5. 또는 새로 만들기를 클릭하여 새로운 정책 템플릿을 만듭니다.

    1. 할당하고자 하는 정책을 이름과 함께 설명하세요.

      액세스 그룹 템플릿에 대해 구성하는 모든 정책에 대해 정책 템플릿을 만듭니다. 정책 템플릿을 참조하여 다른 기업 IAM 템플릿에 액세스 권한을 할당할 수 있습니다.

    2. 서비스 또는 서비스 그룹을 선택하고 다음을 클릭합니다.

    3. 액세스 범위를 모든 리소스로 설정하거나 속성에 따라 특정 리소스를 선택한 후 다음을 클릭합니다.

    4. 역할 및 작업 섹션에서 액세스 범위를 정의하는 역할을 선택합니다. 정책 템플릿 플로우 내에서 사용자 지정 역할 템플릿을 만들 수 있으며, 선택한 서비스에 대한 기존 사용자 지정 역할 템플릿에서 사용자 지정 역할을 선택할 수도 있습니다.

      1. 사용자 지정 역할 만들기를 클릭하여 사용자 지정 작업 조합을 정의합니다.
      2. 템플릿 이름을 입력합니다.
      3. (선택 사항) 템플릿 설명을 입력하세요.
      4. 사용자 지정 역할의 이름을 입력하세요.
      5. 사용자 정의 역할의 ID를 입력하세요.
      6. (선택 사항) 사용자 지정 역할에 대한 설명을 입력하세요.
      7. 작업을 선택하고 만들기를 클릭합니다. 사용자 지정 역할은 정책에 대해 이미 선택된 다른 역할과 함께 나열되고 선택됩니다.
      8. (선택 사항) 정책이 액세스를 허용할 때를 지정하는 조건을 추가합니다.

      검색창을 사용하여 특정 작업을 지원하는 역할을 찾습니다. 예를 들어 읽기, 수정 또는 보기를 검색하여 이러한 작업이 적용되는 역할 목록을 표시합니다.

  6. 추가 를 클릭하십시오.

접근 정책 제거

템플릿이 커밋되고 할당되기 전에 정책을 제거할 수 있습니다.

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.
  2. 액세스 그룹 템플릿을 선택하십시오.
  3. 액세스 클릭
  4. 제거하려는 정책의 작업 아이콘을 클릭하세요.
  5. 제거를 클릭하십시오.

조치 제어

기본적으로, 하위 계정의 그룹 관리자는 기업 관리 액세스 그룹에 액세스 정책을 추가할 수 없습니다. 접근 그룹 관리자가 정책을 추가할 수 있도록 하려면 다음 단계를 완료하십시오

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.
  2. 액세스 그룹 템플릿을 선택하십시오.
  3. 액세스 클릭
  4. 정책 추가 에 대한 작업 제어를 예로 설정하면 자식 계정의 액세스 그룹 관리자가 해당 계정의 엔터프라이즈 관리 액세스 그룹에 액세스 정책을 추가할 수 있습니다.

액세스 그룹 관리자가 자신의 계정에 있는 기업 관리 액세스 그룹에 추가하는 모든 정책은 제거 및 업데이트할 수 있습니다.

템플릿 세부 사항 업데이트

템플릿을 적용하기 전에 언제든지 템플릿 이름, 액세스 그룹 이름, 설명을 업데이트할 수 있습니다. 템플릿 세부 정보를 업데이트하려면 다음 단계를 따르십시오:

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.
  2. 업데이트하려는 액세스 그룹 템플릿을 선택합니다.
  3. 편집 아이콘 세부사항 섹션에서 " 편집 " 아이콘을 클릭하십시오.
  4. 템플릿 이름, 액세스 그룹 이름, 설명을 필요한 대로 업데이트합니다.
  5. 저장 을 클릭하십시오.

템플릿을 커밋한 후에 업데이트해야 하는 경우, 새로운 버전을 만드십시오.

액세스 그룹 템플릿 검토하기

액세스 그룹 템플릿을 검토하고 커밋하여 버전을 더 이상 변경할 수 없도록 합니다. 이렇게 하면 템플릿 할당 관리자가 준비가 완료되었다는 확인을 받은 후에만 버전을 할당할 수 있습니다.

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.
  2. 검토하려는 액세스 그룹 템플릿을 선택합니다.
  3. 검토를 클릭하십시오.
  4. 액세스 그룹 템플릿이 올바르게 구성되어 있는지 확인하십시오.
  5. 버전을 변경할 수 없음을 확인하려면 체크박스를 클릭하십시오.
  6. 커미트를 클릭하십시오.

하위 계정에 액세스 그룹 템플릿 할당

액세스 그룹 템플릿을 기업의 하위 계정에 할당하십시오.

기업 계정에는 IAM 템플릿을 할당할 수 없고, 하위 계정에만 할당할 수 있습니다.

  1. 계정 할당을 클릭합니다.

  2. 액세스 그룹 템플릿을 할당할 계정과 계정 그룹을 선택합니다.

    템플릿을 할당하는 각 하위 계정에서 기업 관리 액세스 그룹을 만듭니다. 자식 계정의 사용자는 액세스 그룹이 엔터프라이즈 관리 IAM 템플릿에서 온 것임을 [엔터프라이즈 관리] IAM 템플릿에서 확인할 수 있습니다.{: tag-cyan} 그룹에 태그를 붙이세요.

  3. 지정을 클릭하십시오.

작업을 실패한 경우, 다시 시도를 클릭합니다.

새 버전 만들기

커밋되었거나 할당된 액세스 그룹 템플릿을 변경하려면 새 버전을 만드십시오. 최신 버전을 기반으로 새로운 버전을 만들거나, 선택한 다른 버전을 기반으로 새로운 버전을 만들 수 있습니다.

액세스 그룹 템플릿의 새로운 버전을 생성하려면 다음 단계를 완료하십시오

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.

  2. 액세스 그룹 템플릿을 선택하십시오.

  3. 새 버전 아이콘을 클릭하십시오. 새 버전 아이콘.

  4. 새 버전으로 만들 기본이 될 버전을 선택하세요.

  5. 새로운 템플릿 이름과 설명을 입력하거나, 이미 사용 중인 것을 그대로 사용해도 됩니다.

    새로운 템플릿 이름을 입력하면 이 버전과 모든 이전 버전의 템플릿 이름이 업데이트됩니다. 템플릿 설명은 각 버전별로 별도로 저장됩니다.

  6. 새로운 액세스 그룹 이름과 설명을 입력하거나, 이미 사용 중인 것을 그대로 사용하십시오.

    새 액세스 그룹 이름을 입력하면 새 버전을 지정한 후 하위 계정에 표시된 이전 액세스 그룹 이름이 바뀝니다.

  7. 새 버전으로 옮기고 싶은 대상을 선택합니다.

    1. (선택 사항) 멤버를 선택합니다.
    2. (선택 사항) ‘동적 규칙’을 선택합니다.
    3. (선택 사항) 액세스를 선택합니다.
  8. 작성을 클릭하십시오.

  9. 구성에 필요한 다른 조정 사항을 적용하십시오.

  10. 검토를 클릭하고 새 버전을 적용합니다. 자세한 내용은 액세스 그룹 템플릿 검토하기를 참고하세요.

액세스 그룹 템플릿의 새로운 버전을 할당하려면 다음 단계를 완료하십시오

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.
  2. 작업하려는 템플릿에서 " 표 펼치기 " 아이콘( 표 펼치기 아이콘 )을 클릭합니다.
  3. 현재 하위 계정에 할당된 버전을 선택합니다.
  4. 할당을 클릭합니다.
  5. 다른 버전을 할당하려는 계정 또는 계정 그룹 할당에서 업데이트를 클릭합니다.
  6. “버전 선택”을 클릭하세요.
    1. 현재 버전을 대체할 버전을 선택합니다.
  7. 업데이트 를 클릭하십시오.
  8. 다른 버전을 할당하려는 각 계정 또는 계정 그룹에 대해 이 단계를 반복합니다.

새로 할당된 템플릿 버전이 이전 버전을 대체합니다. 새 버전 할당에 대해 자세히 알아보세요.

할당 제거

템플릿이 할당된 하나 이상의 계정에서 템플릿 할당을 제거할 수 있습니다. 템플릿이 의도한 대로 작동하지 않는 경우 그렇게 할 수 있습니다. 계정에서 템플릿 할당을 제거하면 기본적으로 템플릿의 이전 버전이 복원됩니다. 제거한 할당이 템플릿의 첫 번째 버전 또는 유일한 버전인 경우, 하위 계정의 액세스 그룹이 제거됩니다.

과제를 삭제하려면 다음 단계를 따르세요:

  1. IBM Cloud 콘솔에서 [ 관리] > [액세스(IAM)] > [템플릿] 으로 이동합니다.
  2. 액세스 그룹 템플릿을 선택하십시오.
  3. 과제 업데이트를 클릭합니다.
    1. 하나 또는 몇 개의 계정에서 할당을 제거하려면, 템플릿 할당을 제거하려는 계정을 선택 해제하십시오.
    2. 템플릿이 할당된 모든 계정에서 할당을 제거하려면, 모두 할당 해제를 클릭합니다.

API를 사용하여 액세스 그룹 템플릿 만들기

하위 계정이 많거나 계정 간에 공통된 액세스 요구 사항이 있거나 엄격한 보안 요구 사항이 있거나 액세스 정책을 변경해야 하는 경우 액세스 그룹 템플릿을 사용하는 것이 좋습니다.

다음 예제 요청과 같이 IAM 액세스 그룹 API를 호출하여 프로그래밍 방식으로 액세스 그룹 템플릿을 생성할 수 있습니다. 이 예는 하위 계정의 모든 IAM 계정 관리 서비스에 대한 관리자 액세스가 필요한 관리자를 위한 액세스 그룹 템플릿을 만들어서 그들이 액세스를 관리할 수 있도록 합니다:

{
    curl -X POST --location
    --header "Authorization: Bearer {iam_token}"
    --header "Accept: application/json"   --header "Content-Type: application/json"
    --data "name": "IAM Admin Group template",
    "description": "This access group template allows admin access to all IAM platform services in the account.",
    "account_id": "06a2e9d0614447e295824de8c8df7b4f",
    "access_group": {
        "name": "IAM Admin Group",
        "description": "This enterprise-managed access group allows admin access to all IAM platform services in the account. Managers are dynamically added.",
        "members": {
            "users": [
                "IBMid-1234",
                "IBMid-2345"
            ],
            "services": [
                "iam-ServiceId-123",
                "iam-ServiceId-234"
            ],
            "action_controls": {
                "add": "true",
                "remove": "false"
            }
        },
        "assertions": {
            "rules": [
                {
                    "name": "Manager group rule",
                    "expiration": 12,
                    "realm_name": "https://idp.example.org/SAML2",
                    "conditions": [
                        {
                            "claim": "isManager",
                            "operator": "EQUALS",
                            "value": "true"
                        }
                    ],
                    "action_controls": {
                        "remove": "true",
                        "update": "false"
                    }
                }
            ],
            "action_controls": {
                "add": "false"
            }
        },
        "action_controls": {
            "access": {
                "add": true
            }
        }
    },
    "policy_template_references": [
        {
            "id": "policyTemplateId-123",
            "version": "1"
        },
        {
            "id": "policyTemplateId-234",
            "version": "1"
        }
    ],
    "externals": {
        "profile_template_ids": [
            "profileTemplateId-123",
            "profileTemplateId-234"
        ]
    }
}

(선택 사항) 멤버 추가

이전 예에서, 두 명의 기업 사용자와 두 개의 서비스 ID가 IBM ID를 지정하여 액세스 그룹 템플릿에 추가되었습니다.

템플릿에 추가하는 기업 멤버는 템플릿을 할당하려는 기업 계정과 하위 계정 모두에 있어야 합니다. 사용자가 템플릿을 할당할 하위 계정의 구성원이 아닌 경우, 해당 하위 계정에 사용자를 추가할 수 있습니다.

조치 제어

기본적으로, 하위 계정의 그룹 관리자는 자신의 계정에서 기업 관리 액세스 그룹의 구성원을 추가하거나 제거할 수 없습니다. 기업 사용자로서 템플릿에 추가할 수 없는 계정의 구성원을 포함할 수 있도록 구성원 추가를 허용할 수 있습니다. 액세스 그룹 관리자는 액세스 그룹에 속한 사람이 조직을 떠날 때 자신이 추가한 구성원을 언제든지 제거할 수 있습니다.

action_controls 이전 예에서, addtrue 로 설정되어 있기 때문에 하위 계정의 그룹 관리자가 자신의 계정에서 구성원을 추가할 수 있고, removefalse 로 설정되어 있기 때문에 기업 구성원을 제거하는 것이 제한됩니다.

(선택 사항) 동적 규칙 추가

특정 신원 속성을 기준으로 하위 계정의 연동 사용자를 엔터프라이즈 관리 액세스 그룹에 자동으로 추가하는 동적 규칙을 생성할 수 있습니다. 신원 제공자( IdP ) 내에 구성된 데이터가 로그인 시 사용자의 페더레이션 ID와 함께 전달될 때 충족해야 하는 조건을 설정합니다. 동적 규칙을 추가하기 전에 외부 ID 공급자로부터 인증을 활성화해야 합니다.

이전 예에서 관리자는 assertions 섹션에 지정된 그룹화 규칙( rules )에 따라 동적으로 그룹에 추가됩니다. 동적으로 추가된 사용자의 세션 지속 시간은 12 시간으로 설정됩니다. 이 기간이 만료되면 액세스 그룹의 구성원 자격이 취소됩니다. 사용자는 로그인해야만 액세스 그룹 멤버십을 갱신할 수 있습니다.

조치 제어

기본적으로, 액세스 그룹 관리자는 기업 관리 액세스 그룹에 대한 동적 규칙을 추가, 제거 또는 업데이트할 수 없습니다. 동적 규칙에 대한 작업 제어에는 두 가지 수준이 있습니다

  • 액세스 그룹 관리자가 특정 동적 규칙을 제거하거나 업데이트할 수 있는지 여부를 결정하는 각 특정 규칙에 대한 액션 컨트롤
  • 액세스 그룹 관리자가 액세스 그룹에 대한 동적 규칙을 추가, 제거 또는 업데이트할 수 있는지 여부를 결정하는 액션 컨트롤

두 가지 수준이 모두 설정되어 있는 경우, 특정 동적 규칙에 대한 내부 수준 작업 제어가 우선합니다.

이전 예에서, 내부 레벨 액션 컨트롤은 removetrue 로 설정하여 액세스 그룹 관리자가 규칙을 제거할 수 있도록 합니다. updatefalse 로 설정되어 있으므로 액세스 그룹 관리자는 규칙을 업데이트할 수 없습니다. 외부 레벨 액션 컨트롤러( add )가 false 로 설정되어 있으므로, 액세스 그룹 관리자는 새로운 동적 규칙을 추가할 수 없습니다.

(선택 사항) 접근 정책 추가

액세스 정책은 기업 관리 액세스 그룹의 구성원에게 하위 계정에 대한 액세스 권한을 부여합니다. 이전 예에서, 기존의 정책 템플릿은 액세스 그룹 템플릿에 대한 액세스를 할당하는 데 ' policy_template_references'를 사용합니다.

조치 제어

기본적으로, 하위 계정의 그룹 관리자는 기업 관리 액세스 그룹에 액세스 정책을 추가할 수 없습니다. 이전 예에서, add 에 대한 액션 컨트롤( access )이 true 로 설정되어 있으므로, 하위 계정 관리자는 자신의 계정에 있는 그룹에 정책을 추가할 수 있습니다.

API를 사용하여 액세스 그룹 템플릿 업데이트하기

액세스 그룹 템플릿은 템플릿이 커밋되기 전에 언제든지 업데이트할 수 있습니다.

액세스 그룹 템플릿을 업데이트하려면 다음 샘플 요청에 나와 있는 것처럼 IAM 정책 관리 API를 호출하십시오

curl -X PUT --location --header "Authorization: Bearer {iam_token}" --header "Accept: application/json" --header "If-Match: {if_match}" --header "Content-Type: application/json" --data '{ "name": "IAM Admin Group template 2", "description": "This access group template allows admin access to all IAM platform services in the account.", "group": { "name": "IAM Admin Group 8", "description": "This access group template allows admin access to all IAM platform services in the account.", "members": { "users": [ "IBMid-665000T8WY" ], "services": [ "iam-ServiceId-e371b0e5-1c80-48e3-bf12-c6a8ef2b1a11" ], "action_controls": { "add": true, "remove": false } }, "assertions": { "rules": [ { "name": "Manager group rule", "expiration": 12, "realm_name": "https://idp.example.org/SAML2", "conditions": [ { "claim": "blueGroup", "operator": "CONTAINS", "value": "test-bluegroup-saml" } ], "action_controls": { "remove": false, "update": false } } ], "action_controls": { "add": false } }, "action_controls": { "access": { "add": false } } }, "policy_template_references": [ { "id": "policyTemplateId-123", "version": "1" }, { "id": "policyTemplateId-234", "version": "1" } ] }' "{base_url}/v1/group_templates/{template_id}/versions/{version_num}"

API를 사용하여 액세스 그룹 템플릿 검토 및 커밋하기

액세스 그룹 템플릿을 검토하고 커밋하여 버전을 더 이상 변경할 수 없도록 합니다. 이렇게 하면 템플릿 할당 관리자가 준비가 완료되었다는 확인을 받은 후에만 버전을 할당할 수 있습니다.

  1. 기업 계정에 있는 액세스 그룹 템플릿을 나열하고 검토하고 커밋하려는 템플릿의 액세스 그룹 이름( id )을 기록해 두십시오.

    curl -X GET --location --header "Authorization: Bearer {iam_token}" --header "Accept: application/json" "{base_url}/v1/group_templates?account_id=accountID-123&limit=50&offset=0&verbose=false"
    
  2. 템플릿 버전을 받아 답변을 검토합니다.

    curl -X GET --location --header "Authorization: Bearer {iam_token}" --header "Accept: application/json" "{base_url}/v1/group_templates/{template_id}/versions/{version_num}"
    
  3. 템플릿 버전을 커밋합니다.

    curl -X POST --location --header "Authorization: Bearer {iam_token}" --header "Accept: application/json" --header "If-Match: {if_match}" "{base_url}/v1/group_templates/{template_id}/versions/{version_num}/commit"
    

API를 사용하여 하위 계정에 액세스 그룹 템플릿 할당

액세스 그룹 템플릿을 기업의 하위 계정에 할당하십시오.

기업 계정에는 IAM 템플릿을 할당할 수 없고, 하위 계정에만 할당할 수 있습니다.

  1. 기업 계정에 있는 액세스 그룹 템플릿을 나열하고, 하위 계정에 할당하려는 템플릿의 액세스 그룹 이름( id )을 기록해 둡니다.

    curl -X GET --location --header "Authorization: Bearer {iam_token}" --header "Accept: application/json" "{base_url}/v1/group_templates?account_id=accountID-123&limit=50&offset=0&verbose=false"
    
  2. AccountAccountGroup 에 액세스 그룹 템플릿을 할당합니다.

    curl -X POST --location --header "Authorization: Bearer {iam_token}" --header "Accept: application/json" --header "Content-Type: application/json" --data '{ "template_id": "AccessGroupTemplateId-4be4", "template_version": "1", "target_type": "AccountGroup", "target": "0a45594d0f-123" }' "{base_url}/v1/group_assignments"
    

API를 사용하여 새 버전 생성하기

커밋되었거나 할당된 액세스 그룹 템플릿을 변경하려면 새 버전을 만드십시오. 새로운 템플릿 이름을 입력하면 이 버전과 모든 이전 버전의 템플릿 이름이 업데이트됩니다.

  1. 기업 계정에 있는 액세스 그룹 템플릿을 나열하고 새 버전을 만들려는 템플릿의 액세스 그룹 이름( id )을 기록해 둡니다.

    curl -X GET --location --header "Authorization: Bearer {iam_token}" --header "Accept: application/json" "{base_url}/v1/group_templates?account_id=accountID-123&limit=50&offset=0&verbose=false"
    
  2. 새 버전을 만들고 업데이트를 포함시키세요.

    curl -X POST --location --header "Authorization: Bearer {iam_token}" --header "Accept: application/json" --header "Content-Type: application/json" --data '{ "name": "IAM Admin Group template 2", "description": "This access group template allows admin access to all IAM platform services in the account.", "group": { "name": "IAM Admin Group 8", "description": "This access group template allows admin access to all IAM platform services in the account.", "members": { "users": [ "IBMid-123", "IBMid-234" ], "services": [ "iam-ServiceId-345" ], "action_controls": { "add": true, "remove": false } }, "assertions": { "rules": [ { "name": "Manager group rule", "expiration": 12, "realm_name": "https://idp.example.org/SAML2", "conditions": [ { "claim": "blueGroup", "operator": "CONTAINS", "value": "test-bluegroup-saml" } ], "guardrails": { "remove": false, "update": false } } ], "action_controls": { "add": false } }, "action_controls": { "access": { "add": false } } }, "policy_template_references": [ { "id": "policyTemplateId-123", "version": "1" }, { "id": "policyTemplateId-234", "version": "1" } ] }' "{base_url}/v1/group_templates/{template_id}/versions"
    

액세스 그룹 템플릿의 새로운 버전을 만들고 구성한 후, 그것을 검토하고 하위 계정에 할당하십시오. 이전 버전의 액세스 그룹 템플릿이 포함된 하위 계정에 새 버전을 할당하여 원활하게 할당을 업데이트할 수 있습니다. 자세한 내용은 API를 사용하여 하위 계정에 액세스 그룹 템플릿 할당을 참조하세요.

API를 사용하여 할당 사항 제거하기

템플릿이 할당된 계정이나 계정 그룹에서 템플릿 할당을 제거할 수 있습니다. 템플릿이 의도한 대로 작동하지 않거나 더 이상 필요하지 않은 경우 그렇게 할 수 있습니다. 계정에서 템플릿 할당을 제거하면 기본적으로 템플릿의 이전 버전이 존재하는 경우 복원됩니다. 제거하는 할당이 템플릿의 첫 번째 버전 또는 유일한 버전인 경우, 하위 계정의 기업 관리 액세스 그룹이 제거됩니다.

과제를 삭제하려면 다음 단계를 따르세요:

  1. 할당을 나열하고 제거하려는 할당에 대한 응답에 " AccessGroupAssignmentId "를 기록합니다.

     curl -X GET --location --header "Authorization: Bearer {iam_token}" --header "Accept: application/json" "{base_url}/v1/group_assignments?account_id=accountID-123&limit=50&offset=0"
    
  2. 지정을 제거하십시오.

    curl -X DELETE --location --header "Authorization: Bearer {iam_token}" "{base_url}/v1/group_assignments/{assignment_id}"
    

API를 사용하여 버전 삭제하기

액세스 그룹 템플릿 버전을 삭제하기 전에, 해당 버전의 템플릿에 대한 모든 할당을 제거해야 합니다. 다음 단계를 완료하여 특정 버전을 삭제하십시오

  1. 기업 계정에 있는 액세스 그룹 템플릿을 나열하고 삭제하려는 템플릿 버전에 대한 응답에서 AccessGroupTemplateId ID와 버전을 확인합니다.

     curl -X GET --location --header "Authorization: Bearer {iam_token}" --header "Accept: application/json" "{base_url}/v1/group_templates?account_id=accountID-123&limit=50&offset=0&verbose=true"
    
  2. 버전을 삭제합니다.

    curl -X DELETE --location --header "Authorization: Bearer {iam_token}" "{base_url}/v1/group_templates/{template_id}/versions/{version_num}"
    

CLI를 사용하여 액세스 그룹 템플릿 만들기

하위 계정이 많거나 계정 간에 공통된 액세스 요구 사항이 있거나 보안 요구 사항이 엄격하거나 기업에서 액세스 정책을 변경해야 하는 경우 액세스 그룹 템플릿을 사용하는 것이 좋습니다.

다음 단계를 수행하여 액세스 그룹 템플릿을 생성할 수 있습니다

  1. 액세스 그룹 템플릿 정의가 포함된 JSON 파일을 만듭니다. 사용할 수 있는 속성에 대한 자세한 정보는 IAM 액세스 그룹 API를 참조하십시오. 다음 예는 관리자가 하위 계정의 모든 IAM 계정 관리 서비스에 액세스할 수 있도록 관리자 액세스 권한이 필요한 관리자를 위한 액세스 그룹 템플릿을 만듭니다

    {
        "name": "IAM Admin Group template",
        "description": "This access group template allows admin access to all IAM platform services in the account.",
        "account_id": "06a2e9d0614447e295824de8c8df7b4f",
        "access_group": {
            "name": "IAM Admin Group",
            "description": "This enterprise-managed access group allows admin access to all IAM platform services in the account. Managers are dynamically added.",
            "members": {
                "users": [
                    "IBMid-1234",
                    "IBMid-2345"
                ],
                "services": [
                    "iam-ServiceId-123",
                    "iam-ServiceId-234"
                ],
                "action_controls": {
                    "add": "true",
                    "remove": "false"
                }
            },
            "assertions": {
                "rules": [
                    {
                        "name": "Manager group rule",
                        "expiration": 12,
                        "realm_name": "https://idp.example.org/SAML2",
                        "conditions": [
                            {
                                "claim": "isManager",
                                "operator": "EQUALS",
                                "value": "true"
                            }
                        ],
                        "action_controls": {
                            "remove": "true",
                            "update": "false"
                        }
                    }
                ],
                "action_controls": {
                    "add": "false"
                }
            },
            "action_controls": {
                "access": {
                    "add": true
                }
            }
        },
        "policy_template_references": [
            {
                "id": "policyTemplateId-123",
                "version": "1"
            },
            {
                "id": "policyTemplateId-234",
                "version": "1"
            }
        ],
        "externals": {
            "profile_template_ids": [
                "profileTemplateId-123",
                "profileTemplateId-234"
            ]
        }
    }
    
  2. 다음 샘플 요청에 표시된 대로 access-group-template-create 메서드를 사용하십시오

    ibmcloud iam access-group-template-create --output JSON --file /path/to/access_group_template.json
    

(선택 사항) 멤버 추가

이전 예에서, 두 명의 기업 사용자와 두 개의 서비스 ID가 IBM ID를 지정하여 액세스 그룹 템플릿에 추가되었습니다.

템플릿에 추가하는 기업 멤버는 템플릿을 할당하려는 기업 계정과 하위 계정 모두에 있어야 합니다. 사용자가 템플릿을 할당할 하위 계정의 구성원이 아닌 경우, 해당 하위 계정에 사용자를 추가할 수 있습니다.

조치 제어

기본적으로, 하위 계정의 그룹 관리자는 자신의 계정에서 기업 관리 액세스 그룹의 구성원을 추가하거나 제거할 수 없습니다. 기업 사용자로서 템플릿에 추가할 수 없는 계정의 구성원을 포함할 수 있도록 구성원 추가를 허용할 수 있습니다. 액세스 그룹 관리자는 액세스 그룹에 속한 사람이 조직을 떠날 때 자신이 추가한 구성원을 언제든지 제거할 수 있습니다.

action_controls 이전 예에서, addtrue 로 설정되어 있기 때문에 하위 계정의 그룹 관리자가 자신의 계정에서 구성원을 추가할 수 있고, removefalse 로 설정되어 있기 때문에 기업 구성원을 제거하는 것이 제한됩니다.

(선택 사항) 동적 규칙 추가

특정 신원 속성을 기준으로 하위 계정의 연동 사용자를 엔터프라이즈 관리 액세스 그룹에 자동으로 추가하는 동적 규칙을 생성할 수 있습니다. 신원 제공자( IdP ) 내에 구성된 데이터가 로그인 시 사용자의 페더레이션 ID와 함께 전달될 때 충족해야 하는 조건을 설정합니다. 동적 규칙을 추가하기 전에 외부 ID 공급자로부터 인증을 활성화해야 합니다.

이전 예에서 관리자는 assertions 섹션에 지정된 그룹화 규칙( rules )에 따라 동적으로 그룹에 추가됩니다. 동적으로 추가된 사용자의 세션 지속 시간은 12 시간으로 설정됩니다. 이 기간이 만료되면 액세스 그룹의 구성원 자격이 취소됩니다. 사용자는 로그인해야만 액세스 그룹 멤버십을 갱신할 수 있습니다.

조치 제어

기본적으로, 액세스 그룹 관리자는 기업 관리 액세스 그룹에 대한 동적 규칙을 추가, 제거 또는 업데이트할 수 없습니다. 동적 규칙에 대한 작업 제어에는 두 가지 수준이 있습니다

  • 액세스 그룹 관리자가 특정 동적 규칙을 제거하거나 업데이트할 수 있는지 여부를 결정하는 각 특정 규칙에 대한 액션 컨트롤
  • 액세스 그룹 관리자가 액세스 그룹에 대한 동적 규칙을 추가, 제거 또는 업데이트할 수 있는지 여부를 결정하는 액션 컨트롤

두 가지 수준이 모두 설정되어 있는 경우, 특정 동적 규칙에 대한 내부 수준 작업 제어가 우선합니다.

이전 예에서, 내부 레벨 액션 컨트롤은 removetrue 로 설정하여 액세스 그룹 관리자가 규칙을 제거할 수 있도록 합니다. updatefalse 로 설정되어 있으므로 액세스 그룹 관리자는 규칙을 업데이트할 수 없습니다. 외부 레벨 액션 컨트롤러( add )가 false 로 설정되어 있으므로, 액세스 그룹 관리자는 새로운 동적 규칙을 추가할 수 없습니다.

(선택 사항) 접근 정책 추가

액세스 정책은 기업 관리 액세스 그룹의 구성원에게 하위 계정에 대한 액세스 권한을 부여합니다. 이전 예에서, 기존의 정책 템플릿은 액세스 그룹 템플릿에 대한 액세스를 할당하는 데 ' policy_template_references'를 사용합니다.

조치 제어

기본적으로, 하위 계정의 그룹 관리자는 기업 관리 액세스 그룹에 액세스 정책을 추가할 수 없습니다. 이전 예에서, add 에 대한 액션 컨트롤( access )이 true 로 설정되어 있으므로, 하위 계정 관리자는 자신의 계정에 있는 그룹에 정책을 추가할 수 있습니다.

CLI를 사용하여 액세스 그룹 템플릿 업데이트하기

액세스 그룹 템플릿은 템플릿이 커밋되기 전에 언제든지 업데이트할 수 있습니다.

액세스 그룹 템플릿을 업데이트하려면 다음 단계를 따르십시오

  1. 새로운 액세스 그룹 템플릿 정의로 JSON 파일을 업데이트하십시오. JSON 파일에서 사용할 수 있는 속성에 대한 자세한 정보는 IAM 액세스 그룹 API를 참조하십시오.

  2. 다음의 샘플 요청에 나와 있는 것처럼 ' access-group-template-version-update ' 방법을 사용하십시오

    ibmcloud iam access-group-template-version-update example-template-name 1 --file /path/to/access_group_template.json
    

    이 예제 요청은 템플릿 example-template-name 의 버전 1 을 업데이트합니다.

CLI를 사용하여 액세스 그룹 템플릿을 검토하고 커밋하기

액세스 그룹 템플릿을 검토하고 커밋하여 버전을 더 이상 변경할 수 없도록 합니다. 이렇게 하면 템플릿 할당 관리자가 준비가 완료되었다는 확인을 받은 후에만 버전을 할당할 수 있습니다.

  1. 기업 계정에 있는 액세스 그룹 템플릿을 나열하고 검토하고 커밋하려는 템플릿의 액세스 그룹 이름( id )을 기록해 두십시오.

     ibmcloud iam access-group-templates
    
  2. 템플릿 버전을 받아 답변을 검토합니다.

    ibmcloud iam access-group-template example-template-name 1
    
  3. 템플릿 버전을 커밋합니다.

    ibmcloud iam access-group-template-version-commit example-template-name 1
    

CLI를 사용하여 하위 계정에 액세스 그룹 템플릿 할당

액세스 그룹 템플릿을 기업의 하위 계정에 할당하십시오.

기업 계정에는 IAM 템플릿을 할당할 수 없고, 하위 계정에만 할당할 수 있습니다.

  1. 기업 계정에 있는 액세스 그룹 템플릿을 나열하고, 하위 계정에 할당하려는 템플릿의 액세스 그룹 이름( id )을 기록해 둡니다.

    ibmcloud iam access-group-templates
    
  2. AccountAccountGroup 에 액세스 그룹 템플릿을 할당합니다.

    ibmcloud iam access-group-assignment-create example-template-name 1 --target-type Account --target example-account-id
    

CLI를 사용하여 새 버전 생성하기

커밋되었거나 할당된 액세스 그룹 템플릿을 변경하려면 새 버전을 만드십시오. 새로운 템플릿 이름을 입력하면 이 버전과 모든 이전 버전의 템플릿 이름이 업데이트됩니다.

  1. 기업 계정에 있는 액세스 그룹 템플릿을 나열하고 새 버전을 만들려는 템플릿의 액세스 그룹 이름( id )을 기록해 둡니다.

    ibmcloud iam access-group-templates
    
  2. 업데이트를 포함하는 JSON 파일을 만듭니다. JSON 파일에서 사용할 수 있는 속성에 대한 자세한 정보는 IAM 액세스 그룹 API를 참조하십시오.

  3. 다음 샘플 요청에 나와 있는 것처럼 ' access-group-template-version-create ' 방법을 사용하여 새 버전을 만듭니다

    ibmcloud iam access-group-template-version-create example-template-id 1
    

액세스 그룹 템플릿의 새로운 버전을 만들고 구성한 후, 그것을 커밋하고 하위 계정에 할당하십시오. 이전 버전의 액세스 그룹 템플릿이 포함된 하위 계정에 새 버전을 할당할 수 있습니다. 이 경우 새로운 템플릿 버전이 이전 버전을 대체합니다. 자세한 내용은 CLI를 사용하여 하위 계정에 액세스 그룹 템플릿 할당을 참조하십시오.