애플리케이션 액세스 역할 기반 접근 제어
Teleport 애플리케이션 액세스를 위한 역할 기반 접근 제어(RBAC).
이 문서에서는 Teleport Application Service와 특히 관련된 접근 제어 개념을 설명합니다. 애플리케이션에 레이블 할당 # Teleport Application Service는 레이블을 사용하여 프록시된 웹 애플리케이션에 대한 접근을 제어합니다. Teleport 관리자는 구성을 사용하여 앱에 정적 및 동적 레이블을 할당할 수 있습니다: apps: - name: "grafana" uri: "http://localhost:3000" # 정적 레이블. labels: env: "prod" group: "metrics" # Teleport는 주기적으로 동적 레이블의 명령을 실행하고 레이블 값에 명령 출력을 사용합니다. commands: - name: "arch" command: [ "uname" , "-p" ] period: 1m0s 역할에서 애플리케이션 레이블 구성 # Teleport 관리자는 app_labels 속성을 사용하여 특정 레이블이 있는 애플리케이션에 대한 사용자 접근을 허용하거나 거부하는 역할을 구성할 수 있습니다. 예를 들어, 이 역할은 "metrics" 그룹의 모든 애플리케이션에 대한 접근을 허용하되, 프로덕션 환경의 애플리케이션은 제외합니다: kind: role version: v5 metadata: name: dev spec: allow: app_labels: group: "metrics" deny: app_labels: env: "prod" 아이덴티티 공급자와 통합 # 아이덴티티 공급자로부터 받은 사용자의 클레임 및 속성을 기반으로 앱 레이블을 동적으로 채우도록 역할을 구성할 수 있습니다. 이는 external 접두사가 있는 템플릿 변수를 사용하여 수행됩니다. 예를 들어, 이 역할은 동일한 이름의 Okta 사용자 속성에 따라 env 및 group 레이블 값을 설정합니다: allow: app_labels: env: " {{external.env}} " group: " {{external.group}} " 사용자가 Azure 관리 ID에 접근할 수 있도록 활성화 # Teleport를 통해 Azure ID를 가정하고 Azure CLI 명령을 실행하도록 Teleport 사용자를 인가할 수 있습니다. 이렇게 하려면 아래와 같이 spec.allow.azure_identities 필드가 있는 역할을 정의합니다: kind: role version: v5 metadata: name: azure-cli-access spec: allow: app_labels: '*': '*' azure_identities: - /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/Microsoft.ManagedIdentity/userAssignedIdentities/teleport-azure 이 역할을 가진 사용자가 가정할 수 있도록 활성화하려는 각 Azure 관리 ID의 전체 URI가 spec.allow.azure_ident
