Azure Digital Twins의 역할 기반 액세스 제어
중요
새 버전의 Azure Digital Twins 서비스가 릴리스되었습니다. 새 서비스의 확장된 기능에 비추어 원래 Azure Digital Twins 서비스(이 설명서 집합에 설명됨)가 사용 중지되었습니다.
새 서비스에 대한 설명서를 보려면 활성 Azure Digital Twins 설명서를 방문하세요.
Azure Digital Twins를 사용하면 공간 그래프의 특정 데이터, 리소스 및 작업을 정확하게 제어할 수 있습니다. 이렇게 하려면 RBAC( 역할 기반 액세스 제어 )라는 세분화된 역할 및 권한 관리를 통해 수행합니다. RBAC는 역할 및 역할 할당으로 구성됩니다. 역할은 권한 수준을 식별합니다. 역할 할당은 역할을 사용자나 디바이스와 연결합니다.
RBAC를 사용하여 권한을 다음에 부여할 수 있습니다.
- 사용자입니다.
- 디바이스
- 서비스 주체
- 사용자 정의 함수
- 도메인에 속한 모든 사용자
- 테넌트
액세스 수준을 세부적으로 조정할 수도 있습니다.
RBAC는 권한이 공간 그래프에서 상속된다는 점에서 고유합니다.
RBAC로 무엇을 할 수 있나요?
개발자는 RBAC를 다음 용도로 사용할 수 있습니다.
- 사용자에게 전체 건물에 대해서나 특정 방이나 층에 대해서만 디바이스를 관리하는 기능을 부여합니다.
- 관리자에게 전체 그래프의 모든 공간 그래프 노드에 대한 전역 액세스 권한이나 그래프의 특정 섹션에 대한 권한을 부여합니다.
- 지원 전문가에게 액세스 키를 제외하고 그래프에 대한 읽기 액세스 권한을 부여합니다.
- 도메인의 모든 멤버에게 모든 그래프 개체에 대한 읽기 액세스 권한을 부여합니다.
RBAC 모범 사례
역할 기반 액세스 제어는 액세스, 권한 및 역할을 관리하기 위한 상속 중심 보안 전략입니다. 하위 역할은 부모 역할에서 권한을 상속합니다. 권한은 부모 역할에서 상속하지 않고도 할당될 수 있습니다. 필요에 따라 권한을 할당하여 역할을 사용자 지정할 수도 있습니다.
예를 들어 공간 관리자는 지정된 공간에 대한 모든 작업을 실행하는 글로벌 액세스가 필요할 수 있습니다. 액세스는 공간 내에서 또는 아래에 있는 모든 노드를 포함합니다. 디바이스 설치 관리자는 디바이스 및 센서에 대한 읽기 및 업데이트 권한만 필요할 수 있습니다.
항상 최소 권한 원칙에 따라 작업 수행에 꼭 필요한 액세스 권한만 역할에 할당해야 합니다. 이 원칙에 따라 ID에 다음 권한만 부여합니다.
- 작업을 완료하는 데 필요한 액세스 권한.
- 작업 수행에 꼭 필요한 만큼 적절하게 제한된 역할.
중요
항상 최소 권한 원칙을 준수합니다.
다음은 두 가지 중요한 역할 기반 액세스 제어 모범 사례입니다.
- 역할 할당을 정기적으로 감사하여 각 역할에 올바른 권한이 있는지 확인합니다.
- 개인이 역할 또는 할당을 변경할 때 역할 및 할당을 정리합니다.
역할
역할 정의
역할 정의는 사용 권한 및 역할을 구성하는 기타 특성의 컬렉션입니다. 역할 정의에는 해당 역할을 지닌 모든 개체가 수행할 수 있는 만들기, 읽기, 업데이트 및 삭제를 포함한 허용되는 작업이 있습니다. 또한 사용 권한이 적용되는 개체 유형을 지정합니다.
다음 표에서는 Azure Digital Twins에서 사용할 수 있는 역할에 대해 설명합니다.
역할 | 설명 | 식별자 |
---|---|---|
공간 관리자 | 지정된 공간 및 아래의 모든 노드에 대한 CREATE, READ, UPDATE 및 DELETE 권한. 글로벌 권한입니다. | 98e44ad7-28d4-4007-853b-b9968ad132d1 |
사용자 관리자 | 사용자 및 사용자 관련 개체에 대한 CREATE, READ, UPDATE 및 DELETE 권한. 공백에 대한 READ 권한입니다. | dfaac54c-f583-4dd2-b45d-8d4bbc0aa1ac |
디바이스 관리자 | 디바이스 및 디바이스 관련 개체에 대한 CREATE, READ, UPDATE 및 DELETE 권한. 공백에 대한 READ 권한입니다. | 3cdfde07-bc16-40d9-bed3-66d49a8f52ae |
키 관리자 | 액세스 키에 대한 CREATE, READ, UPDATE 및 DELETE 권한입니다. 공백에 대한 READ 권한입니다. | 5a0b1afc-e118-4068-969f-b50efb8e5da6 |
토큰 관리자 | 액세스 키에 대한 READ 및 UPDATE 권한. 공백에 대한 READ 권한입니다. | 38a3bb21-5424-43b4-b0bf-78ee228840c3 |
사용자 | 해당 관련 개체를 포함하여 공간, 센서 및 사용자에 대한 READ 권한. | b1ffdb77-c635-4e7e-ad25-948237d85b30 |
지원 전문가 | 액세스 키를 제외한 모든 항목에 대한 READ 권한. | 6e46958b-dc62-4e7c-990c-c3da2e030969 |
디바이스 설치 관리자 | 해당 관련 개체를 포함하여 디바이스 및 센서에 대한 READ 및 UPDATE 권한. 공백에 대한 READ 권한입니다. | b16dd9fe-4efe-467b-8c8c-720e2ff8817c |
게이트웨이 디바이스 | 센서에 대한 CREATE 권한. 해당 관련 개체를 포함하는 디바이스 및 센서에 대한 READ 권한입니다. | d4c69766-e9bd-4e61-bfc1-d8b6e686c7a8 |
참고
이전 역할에 대한 전체 정의를 검색하려면 시스템/역할 API를 쿼리합니다. 자세한 내용은 역할 할당 만들기 및 관리를 참조하세요.
개체 식별자 유형
objectIdType
(또는 개체 식별자 유형)은 역할에 지정된 ID 유형을 나타냅니다.
DeviceId
및 UserDefinedFunctionId
유형과 별도로, 개체 식별자 유형은 Azure Active Directory 개체의 속성에 해당합니다.
다음 표에는 Azure Digital Twins에서 지원되는 개체 식별자 유형이 나와 있습니다.
Type | 설명 |
---|---|
UserId | 사용자에게 역할을 할당합니다. |
deviceId | 디바이스에 역할을 할당합니다. |
DomainName | 도메인 이름에 역할을 할당합니다. 지정된 도메인 이름을 가진 각 사용자는 해당 역할의 액세스 권한을 가집니다. |
TenantId | 테넌트에 역할을 할당합니다. 지정된 Azure AD 테넌트 ID에 속한 각 사용자는 해당 역할의 액세스 권한을 가집니다. |
ServicePrincipalId | 서비스 주체 개체 ID에 역할을 할당합니다. |
UserDefinedFunctionId | UDF(사용자 정의 함수)에 역할을 할당합니다. |
팁
역할 할당 만들기 및 관리를 참조하여 서비스 주체에 권한을 부여하는 방법을 알아봅니다.
다음 참조 설명서 문서는 다음을 설명합니다.
역할 할당
Azure Digital Twins 역할 할당은 개체(사용자, Azure AD 테넌트 등)를 역할 및 공간에 연결합니다. 권한은 해당 공간에 속하는 모든 개체에 부여됩니다. 공간은 그 아래의 전체 공간 그래프를 포함합니다.
예를 들어, 사용자에게 건물을 나타내는 공간 그래프의 루트 노드에 대한 DeviceInstaller
역할로 역할 할당을 부여한 경우 그러면 이 사용자는 해당 노드와, 건물 내 모든 다른 하위 공간에 대해 디바이스를 읽고 업데이트할 수 있습니다.
받는 사람에게 권한을 부여하려면 역할 할당을 만듭니다. 사용 권한을 취소하려면 역할 할당을 제거합니다.
중요
역할 할당에 대한 자세한 내용은 역할 할당 만들기 및 관리를 참조하세요.
다음 단계
Azure Digital Twins 역할 할당 만들기 및 관리에 대한 자세한 내용은 역할 할당 만들기 및 관리를 참조하세요.
Azure용 RBAC에 대해 자세히 알아보세요.