SaltStack Config RBAC(역할 기반 액세스 제어) 시스템을 사용하면 역할에 대한 권한 설정이 역할에 포함된 모든 사용자에게 적용되므로 한 번에 여러 사용자에 대한 권한 설정을 정의할 수 있습니다. 이러한 설정은 사용자 인터페이스의 역할 업무 공간에서 정의할 수 있습니다.

SaltStack Config에는 삭제할 수 없는 여러 가지 기본 제공 역할이 포함되어 있습니다.
  • 사용자 - 모든 새 로컬 사용자, SSO 및 LDAP 사용자에게 할당되는 기본 역할입니다. 사용자 역할은 다수의 기본 기능을 수행하는 데 필요한 기본 사용 권한(예: 읽기 권한)을 다룹니다. 이 역할이 할당된 사용자는 작업을 보고 실행할 수 있을 뿐만 아니라 역할의 리소스 액세스 설정으로 제한되는 특정 미니언 및 작업 유형에 대한 작업 기록, 작업 반환 및 보고서를 볼 수 있습니다.
  • 관리자 - 이 역할은 사용자 역할보다 고급 도구에 대한 액세스 권한이 필요하며 따라서 시스템 관리에 액세스할 수 있습니다. 관리자는 사용자 설정 및 pillar에 있는 중요 데이터를 볼 수 있으며 경우에 따라 편집할 수 있습니다. 이 역할은 파일, 작업 및 대상과 같은 리소스를 생성, 업데이트 및 삭제할 수 있습니다. 관리자는 새 노드를 구성할 때 필요에 따라 키를 관리할 수도 있습니다.
  • 수퍼유저 - 수퍼유저는 SaltStack Config에서 모든 작업을 수행할 수 있으며, 여기에는 시스템 관리 액세스가 포함됩니다. 수퍼유저 역할에는 root가 할당됩니다. 이 역할은 삭제하거나 복제할 수 없습니다. 역할에 그룹 또는 사용자를 추가할 수 있지만 역할의 다른 설정은 수정할 수 없습니다. 수퍼유저 역할에는 고급 사용자만 추가해야 합니다. 사용 권한 제한을 사실상 무시하기 때문입니다.

또한 조직의 고유한 요구에 맞게 사용자 정의 역할을 생성할 수 있습니다.

작업을 완료할 수 있는 권한을 역할에 부여하려면 허용된 작업을 정의하고 리소스 또는 기능 영역에 대한 액세스 권한도 할당해야 합니다. 권한은 허용되는 작업의 광범위한 범주인 반면 리소스 액세스를 사용하면 작업(action)을 완료할 수 있는 특정 리소스(예: 작업(job) 또는 대상)를 정의할 수 있습니다.

특정 리소스 유형 및 기능 영역에 대한 리소스 액세스는 역할 편집기가 아닌 API(RaaS)에서 정의해야 합니다.

역할을 생성한 후 복제하고 허용된 작업을 설정하고 작업 또는 대상에 대한 액세스 권한을 할당하도록 선택할 수 있습니다.

SaltStack Config에서 RBAC(역할 기반 액세스 제어)에 대한 역할을 정의하려면 허용된 작업을 정의하고 리소스 액세스도 할당해야 합니다. 작업은 사용자 인터페이스에서 수행할 수 있는 작업 생성, 편집 또는 실행과 같은 특정 작업입니다. 리소스는 환경의 특정 마스터, 미니언, 대상, 파일 데이터 등과 같은 요소입니다.

허용된 작업(task)은 허용되는 작업(action)의 광범위한 범주이지만, 리소스 액세스는 보다 세분화된 기능이며 작업(action)을 실행할 수 있는 특정 리소스(예: 작업(job) 또는 대상)를 지정할 수 있습니다.


SaltStack Config에서 작업과 리소스 간의 관계를 보여주는 다이어그램

이 예에서 역할은 다음과 같은 권한 설정으로 Linux 대상 그룹에 대해 test.ping을 실행할 수 있습니다.

  • Linux 대상에 대한 읽기 액세스
  • test.ping 명령을 포함하는 작업에 대한 읽기/실행 액세스

test.ping 명령에 대한 작업과 리소스 액세스 간의 관계를 보여주는 다이어그램.

작업

작업 탭에는 다음과 같은 옵션이 있습니다.

작업

설명

새 대상 생성 및 삭제

역할은 새 대상을 생성할 수 있습니다. 이 역할에 할당된 사용자는 자신이 생성한 대상 또는 리소스 액세스에 정의된 다른 대상을 편집하고 삭제할 수 있습니다.

대상은 작업의 Salt 명령이 적용되는 미니언 그룹(하나 또는 여러 Salt 마스터에 걸쳐 있음)입니다. Salt 마스터는 미니언처럼 관리될 수 있으며 미니언 서비스를 실행하는 경우 대상이 될 수도 있습니다. 대상을 생성하는 방법을 참조하십시오.

pillar 데이터 수정

역할은 pillar에 저장된 중요한 정보를 보고 편집하고 삭제할 수 있습니다. 역할에 속한 사용자는 자신이 생성한 pillar를 편집하거나 삭제할 수 있습니다. 리소스 액세스 권한이 부여된 경우에는(API(RaaS)를 통해서만 가능) 다른 pillar를 편집하거나 삭제할 수도 있습니다.

pillar는 Salt 마스터에 정의된 데이터 구조이며 대상을 사용하여 하나 이상의 미니언에 전달됩니다. 대상이 지정된 기밀 데이터를 관련 미니언에만 안전하게 전송하는 데 사용할 수 있습니다. 상태 파일 및 pillar 데이터를 생성하는 방법을 참조하십시오.

파일 서버 수정

역할은 파일 서버를 볼 수 있으며 파일을 생성, 편집 또는 삭제할 수 있습니다. 역할에 속한 사용자는 자신이 생성한 파일을 편집하거나 삭제할 수 있습니다. 리소스 액세스 권한이 부여된 경우에는(API(RaaS)를 통해서만 가능) 다른 파일을 편집하거나 삭제할 수도 있습니다.

파일 서버는 Salt 관련 파일(예: top 파일 또는 상태 파일)과 미니언에 배포할 수 있는 파일(예: 시스템 구성 파일)을 저장하는 위치입니다. 상태 파일 및 pillar 데이터를 생성하는 방법을 참조하십시오.

미니언에서 임의의 명령 실행

역할은 Salt 마스터가 선택할 수 있도록 작업 외부에서 명령을 트리거할 수 있습니다. 역할은 주어진 작업의 정의에 포함된 명령만 실행하도록 제한되지 않습니다.

미니언은 Salt 마스터의 명령을 수신하고 요청된 작업을 수행할 수 있는 미니언 서비스를 실행하는 노드입니다.

키 수락, 삭제 및 거부

역할은 초기 구성에 필요한 경우 미니언 키를 수락, 삭제 및 거부할 수 있습니다.

미니언 키는 Salt 마스터와 Salt 미니언 간의 암호화된 통신을 허용합니다.

사용자, 역할, 사용 권한 읽기 및 수정

역할은 사용자 및 연결된 데이터를 볼 수 있으며 역할 및 권한 설정을 편집할 수 있습니다.

참고: 이 작업은 기본 제공 관리자 및 수퍼유저 역할에만 적용됩니다.

역할은 공통된 요구 사항을 공유하는 여러 사용자의 권한을 정의하는 데 사용됩니다.

Salt 마스터에서 명령 실행

역할은 Salt 마스터에 대해 오케스트레이션 실행과 같은 명령을 실행할 수 있습니다.

Salt 마스터에 대해 실행되는 명령은 Salt 러너라고도 합니다. Salt 러너는 Salt 마스터에서 편의 기능을 실행하는 데 사용되는 모듈입니다. 작업을 생성하는 방법을 참조하십시오. 이 사용 권한을 추가하면 역할은 [미니언] 탭의 명령 실행 기능에서 "salt-run" 옵션을 사용할 수 있습니다.

규정 준수 - 생성, 편집, 삭제 및 평가

역할은 SaltStack SecOps Compliance 정책을 생성, 편집, 삭제 및 평가할 수 있습니다. 이 작업에 대한 사용 권한을 부여하는 것 외에, 역할이 작업을 수행할 대상에 대한 리소스 액세스 권한도 정의해야 합니다. 예를 들어 OracleLinuxAdmin 역할이 OracleLinux 대상에 대한 정책을 정의하도록 하려면 역할에 이 작업을 완료할 수 있는 권한과 OracleLinux 대상에 대한 읽기 액세스 권한을 둘 다 할당합니다.

이 작업은 역할이 SaltStack SecOps Compliance 정책에 업데이트를 적용하도록 허용하지 않습니다.

SaltStack SecOps Compliance는 환경의 모든 시스템에 대한 보안 규정 준수 태세를 관리하는 SaltStack Config의 추가 기능입니다. 자세한 내용은 SaltStack SecOps 사용 및 관리를 참조하십시오.

참고:

SaltStack SecOps 라이센스가 필요합니다.

규정 준수 - 업데이트 적용

역할은 SaltStack SecOps Compliance 평가에서 감지된 비준수 미니언에 업데이트를 적용할 수 있습니다.

SaltStack SecOps Compliance는 환경의 모든 시스템에 대한 보안 규정 준수 태세를 관리하는 SaltStack Config의 추가 기능입니다. 자세한 내용은 SaltStack SecOps 사용 및 관리를 참조하십시오.

참고:

SaltStack SecOps 라이센스가 필요합니다.

규정 준수 - SaltStack 컨텐츠 업데이트

역할은 SaltStack SecOps Compliance 보안 라이브러리에 대한 업데이트를 다운로드할 수 있습니다.

취약성 - 생성, 편집, 삭제 및 평가

역할은 SaltStack SecOps Vulnerability 정책을 생성, 편집, 삭제 및 평가할 수 있습니다. 이 작업에 대한 사용 권한을 부여하는 것 외에, 역할이 평가를 실행할 대상에 대한 리소스 액세스 권한도 정의해야 합니다.

이 작업은 역할이 SaltStack SecOps Vulnerability 정책에 업데이트를 적용하도록 허용하지 않습니다.

SaltStack SecOps Compliance는 환경의 모든 시스템에 대한 보안 규정 준수 태세를 관리하는 SaltStack Config의 추가 기능입니다. 자세한 내용은 SaltStack SecOps 사용 및 관리를 참조하십시오.

참고:

SaltStack SecOps 라이센스가 필요합니다.

취약성 - 업데이트 적용

역할은 SaltStack SecOps Vulnerability 평가에서 감지된 취약성에 업데이트를 적용할 수 있습니다.

SaltStack SecOps Vulnerability는 환경의 모든 시스템에서 취약성을 관리하는 SaltStack Config의 추가 기능입니다. 자세한 내용은 SaltStack SecOps 사용 및 관리를 참조하십시오.

참고:

SaltStack SecOps 라이센스가 필요합니다.

리소스 액세스

리소스 액세스 탭에서는 대상 및 작업에 대한 리소스 액세스를 정의할 수 있습니다. 대상은 작업의 Salt 명령이 적용되는 미니언 그룹(하나 또는 여러 Salt 마스터에 걸쳐 있음)입니다. Salt 마스터는 미니언처럼 관리될 수 있으며 미니언 서비스를 실행하는 경우 대상이 될 수도 있습니다. 작업은 원격 실행 작업을 실행하고 상태를 적용하고 Salt 러너를 시작하는 데 사용됩니다.

참고: 테이블에 정의되지 않은 리소스 유형에는 특정 리소스 액세스 설정이 필요하지 않습니다.
리소스 유형 액세스 수준
대상
  • 읽기 전용 - 역할은 지정된 대상과 해당 세부 정보를 볼 수 있지만 편집하거나 삭제할 수는 없습니다.
  • 읽기/쓰기 - 역할은 지정된 대상을 보고 편집할 수 있습니다.
  • 읽기/쓰기/삭제 - 역할은 지정된 대상을 보고, 편집하고, 삭제할 수 있습니다.
작업
  • 읽기 전용 - 역할은 지정된 작업과 해당 세부 정보를 볼 수 있지만 편집 또는 삭제하거나 작업을 실행할 수는 없습니다.
  • 읽기/ - 역할은 지정된 작업을 보고 실행할 수 있습니다.
  • 읽기/실행/쓰기 - 역할은 지정된 작업을 보고 편집할 수 있으며 실행할 수 있습니다.
  • 읽기/실행/쓰기/삭제 - 역할은 지정된 작업을 보고 편집하고 삭제할 수 있으며 실행할 수 있습니다.
기타 리소스 유형 - 다음 리소스 유형에 대한 액세스는 API(RaaS)를 사용하여 정의해야 합니다.
  • 파일 서버의 파일
  • pillar 데이터
  • 인증 구성
API(RaaS)에서 정의됨

역할을 생성하고 정의하려면 다음을 수행합니다.

사전 요구 사항

사용자 역할을 정의하려면 관리자 액세스 권한이 있어야 합니다.

프로시저

  1. 사이드 메뉴에서 관리 > 역할을 클릭합니다.
  2. 생성을 클릭하고 역할의 이름을 입력합니다.
  3. 작업에서 역할을 부여할 허용된 작업을 선택합니다.
  4. 저장을 클릭합니다.
  5. 작업 또는 대상에 대한 액세스 권한을 할당하려면 역할 업무 공간에서 역할을 선택하고 리소스 액세스 아래에서 필요한 작업 또는 대상을 찾은 후 원하는 액세스 수준을 선택합니다. 예를 들어 역할이 작업을 실행하도록 허용하려면 읽기/실행을 선택하고 저장을 클릭합니다.
  6. (선택 사항) 그룹을 포함하려면 역할 업무 공간에서 역할을 선택하고 그룹에서 포함하려는 그룹을 선택한 후 저장을 클릭합니다.
    참고: 역할 권한은 더해집니다. 여러 역할에 할당된 그룹의 사용자는 각 역할에서 부여된 모든 항목의 조합에 대한 액세스 권한을 받습니다. 선택한 그룹(이 그룹의 모든 사용자 포함)에 역할 설정에 정의되어 있는 모든 허용된 작업과 리소스 액세스 권한이 부여됩니다.
  7. (선택 사항) 역할을 복제하려면 역할 업무 공간에서 역할을 선택하고 복제를 클릭하고 역할의 새 이름을 입력한 후 저장을 클릭합니다.
    참고: 복제된 역할은 기본적으로 원래 역할에서 허용된 작업을 상속합니다. 복제된 역할은 리소스 액세스를 상속하지 않으며, 별도로 정의해야 합니다.
  8. (선택 사항) 경우에 따라서는 보다 세분화된 사용 권한을 구성해야 할 수도 있습니다. 고급 사용 권한을 부여하려면 관리 > 역할 > 고급을 클릭하여 역할을 선택하고 추가 사용 권한을 선택/선택 취소합니다. 저장을 클릭합니다. 고급 사용 권한 및 항목 유형에 대한 자세한 내용은 고급 사용 권한 및 항목 유형을 참조하십시오.
    참고: 일반적인 사용자 작업에 대해 권장되는 최소 사용 권한은 파란색으로 강조 표시됩니다.
    SaltStack Config에서 일반 사용자에 대해 선택된 권한