keenauth_directory_role_mapping
keenauth_directory_role_mapping 리소스는 SCIM 디렉터리의 그룹을 역할에 매핑합니다. 그룹의 구성원은 디렉터리의 조직에서 그 역할을 얻습니다.
resource "keenauth_role" "engineer" {
key = "engineer"
name = "Engineer"
}
resource "keenauth_directory_role_mapping" "engineering" {
directory_id = keenauth_directory.acme_okta.id
directory_group_id = "dsg_01j9zq3v8c5m2x7k4t6r1n0b3d"
role_id = keenauth_role.engineer.id
}
그룹은 ID 공급자에서 옵니다
ID 공급자가 SCIM으로 그룹을 디렉터리에 프로비저닝하므로, 매핑하기 전에 그룹이 있어야 합니다. 디렉터리의 그룹 목록은 다음 명령으로 확인합니다:
keenauth directories groups list <directory_id>
디렉터리에 없는 그룹은 422(unknown_group)로 거부됩니다. 그룹은 디렉터리당 한 번만 매핑할 수 있으며, 디렉터리는 최대 500개의 매핑을 가질 수 있습니다.
생성, 읽기, 삭제만 가능
관리 API는 매핑을 변경할 수 없습니다. 모든 인수(directory_id, directory_group_id, role_id)는 변경하면 매핑을 대체합니다. 프로바이더는 새로 고침할 때마다 디렉터리의 매핑 목록에서 매핑을 읽습니다. 프로바이더 밖에서 삭제된 매핑이나 디렉터리는 상태에서 제거되고 다시 계획됩니다.
권한이 있는 역할
권한이 있는 역할을 매핑하려면 directories:write와 함께 roles:write가 있는 API 키가 필요합니다. 없으면 API는 403(privileged_role_mapping_forbidden)으로 응답합니다. 이런 매핑은 승인된 상태로 생성됩니다.
매핑을 만든 뒤에 역할이 권한이 있는 역할이 되면 매핑은 미승인 상태로 남습니다. approved_at은 비어 있고 역할은 부여되지 않습니다. 프로바이더는 매핑을 승인하지 않습니다. roles:write가 있는 키로 매핑을 다시 만드세요.
인수
role_id는 환경 역할 또는 디렉터리 조직의 역할입니다. 그 밖의 역할은422(unknown_role)로 거부됩니다.organization_id,role_privileged,approved_at,created_at,id는 읽기 전용입니다.
가져오기
디렉터리 ID와 매핑 ID로 가져옵니다:
tofu import keenauth_directory_role_mapping.engineering dir_01j9zq3v8c5m2x7k4t6r1n0b3d/rmp_01j9zq4a2b3c4d5e6f7g8h9j0k