TeleportRoleV8
요약
이 가이드는 Teleport Kubernetes 오퍼레이터를 설치한 후 적용할 수 있는 TeleportRoleV8 리소스의 필드에 대한 종합 참조 문서입니다. apiVersion: resources.teleport.dev/v1
이 가이드는 Teleport Kubernetes 오퍼레이터를 설치한 후 적용할 수 있는 TeleportRoleV8
리소스의 필드에 대한 종합 참조 문서입니다.
resources.teleport.dev/v1#
apiVersion: resources.teleport.dev/v1
| 필드 | 타입 | 설명 |
|---|---|---|
| apiVersion | string | APIVersion은 이 객체 표현의 버전이 지정된 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않는 값은 거부할 수 있습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
| kind | string | Kind는 이 객체가 나타내는 REST 리소스를 나타내는 문자열 값입니다. 서버는 클라이언트가 요청을 제출하는 엔드포인트에서 이를 추론할 수 있습니다. 업데이트할 수 없습니다. CamelCase 형식입니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| metadata | object | |
| spec | object | Teleport의 역할(Role) 리소스 정의 v8 |
spec#
| 필드 | 타입 | 설명 |
|---|---|---|
| allow | object | Allow는 액세스를 허용하기 위해 평가되는 조건의 집합입니다. |
| deny | object | Deny는 액세스를 거부하기 위해 평가되는 조건의 집합입니다. Deny는 allow보다 우선합니다. |
| options | object | Options는 에이전트 포워딩과 같은 OpenSSH 옵션을 위한 것입니다. |
spec.allow#
| 필드 | 타입 | 설명 |
|---|---|---|
| account_assignments | []object | AccountAssignments는 이 조건의 영향을 받는 계정 할당 목록을 보유합니다. |
| app_labels | object | AppLabels는 RBAC 시스템의 일부로 사용되는 레이블 맵입니다. |
| app_labels_expression | string | AppLabelsExpression은 앱에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| aws_role_arns | []string | AWSRoleARNs는 이 역할이 위임할 수 있는 AWS 역할 ARN 목록입니다. |
| azure_identities | []string | AzureIdentities는 이 역할이 위임할 수 있는 Azure 아이덴티티 목록입니다. |
| cluster_labels | object | ClusterLabels는 클러스터에 대한 동적 액세스 권한 부여에 사용되는 노드 레이블 맵입니다. |
| cluster_labels_expression | string | ClusterLabelsExpression은 원격 Teleport 클러스터에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| db_labels | object | DatabaseLabels는 데이터베이스에 대한 액세스를 허용/거부하는 RBAC 시스템에서 사용됩니다. |
| db_labels_expression | string | DatabaseLabelsExpression은 데이터베이스에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| db_names | []string | DatabaseNames는 이 역할이 연결할 수 있는 데이터베이스 이름 목록입니다. |
| db_permissions | []object | DatabasePermissions는 자동 데이터베이스 사용자 프로비저닝 시 데이터베이스 사용자에게 부여될 권한 집합을 지정합니다. |
| db_roles | []string | DatabaseRoles는 자동 사용자 생성을 위한 데이터베이스 역할 목록입니다. |
| db_service_labels | object | DatabaseServiceLabels는 데이터베이스 서비스에 대한 액세스를 허용/거부하는 RBAC 시스템에서 사용됩니다. |
| db_service_labels_expression | string | DatabaseServiceLabelsExpression은 데이터베이스 서비스에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| db_users | []string | DatabaseUsers는 이 역할이 연결할 수 있는 데이터베이스 사용자 목록입니다. |
| desktop_groups | []string | DesktopGroups는 생성된 데스크톱 사용자가 추가될 그룹 목록입니다 |
| gcp_service_accounts | []string | GCPServiceAccounts는 이 역할이 위임할 수 있는 GCP 서비스 계정 목록입니다. |
| github_permissions | []object | GitHubPermissions는 GitHub 통합 관련 권한을 정의합니다. |
| group_labels | object | GroupLabels는 RBAC 시스템의 일부로 사용되는 레이블 맵입니다. |
| group_labels_expression | string | GroupLabelsExpression은 사용자 그룹에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| host_groups | []string | HostGroups는 생성된 사용자가 추가될 그룹 목록입니다 |
| host_sudoers | []string | HostSudoers는 사용자 sudoer 파일에 포함할 항목 목록입니다 |
| impersonate | object | Impersonate는 이 역할이 인증서 발급 또는 기타 수단을 통해 가장할 수 있는 사용자와 역할을 지정합니다. |
| join_sessions | []object | JoinSessions는 사용자가 다른 세션에 참여할 수 있도록 하는 정책을 지정합니다. |
| kubernetes_groups | []string | KubeGroups는 쿠버네티스 그룹 목록입니다 |
| kubernetes_labels | object | KubernetesLabels는 RBAC에 사용되는 쿠버네티스 클러스터 레이블 맵입니다. |
| kubernetes_labels_expression | string | KubernetesLabelsExpression은 쿠버네티스 클러스터에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| kubernetes_resources | []object | KubernetesResources는 이 역할이 액세스 권한을 부여하는 쿠버네티스 리소스입니다. |
| kubernetes_users | []string | KubeUsers는 가장할 선택적 쿠버네티스 사용자입니다 |
| logins | []string | Logins는 *nix 시스템 로그인 목록입니다. |
| mcp | object | MCPPermissions는 MCP 서버 관련 권한을 정의합니다. |
| node_labels | object | NodeLabels는 노드에 대한 동적 액세스 권한 부여에 사용되는 노드 레이블 맵입니다. |
| node_labels_expression | string | NodeLabelsExpression은 SSH 노드에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| request | object | |
| require_session_join | []object | RequireSessionJoin은 세션을 시작하는 데 필요한 사용자에 대한 정책을 지정합니다. |
| review_requests | object | ReviewRequests는 액세스 검토 제출 조건을 정의합니다. |
| rules | []object | Rules는 규칙과 액세스 수준 목록입니다. 규칙은 액세스 제어에 사용되는 고수준 구성입니다. |
| spiffe | []object | SPIFFE는 역할 보유자가 SPIFFE SVID를 생성하는 것에 대한 액세스를 허용하거나 거부하는 데 사용됩니다. |
| windows_desktop_labels | object | WindowsDesktopLabels는 Windows 데스크톱에 대한 액세스를 허용/거부하는 RBAC 시스템에서 사용됩니다. |
| windows_desktop_labels_expression | string | WindowsDesktopLabelsExpression은 Windows 데스크톱에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| windows_desktop_logins | []string | WindowsDesktopLogins는 Windows 데스크톱에서 허용/거부된 데스크톱 로그인 이름 목록입니다. |
| workload_identity_labels | object | WorkloadIdentityLabels는 특정 WorkloadIdentity 리소스를 호출할 수 있는지 여부를 제어합니다. 추가 인증 제어는 WorkloadIdentity 리소스 자체에 존재합니다. |
| workload_identity_labels_expression | string | WorkloadIdentityLabelsExpression은 WorkloadIdentity 발급에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
spec.allow.account_assignments items#
| 필드 | 타입 | 설명 |
|---|---|---|
| account | string | |
| permission_set | string |
spec.allow.db_permissions items#
| 필드 | 타입 | 설명 |
|---|---|---|
| match | object | Match는 권한을 부여하기 위해 일치해야 하는 객체 레이블 목록입니다. |
| permissions | []string | Permission은 부여될 권한의 문자열 표현 목록입니다. 예: SELECT, INSERT, UPDATE, ... |
spec.allow.github_permissions items#
| 필드 | 타입 | 설명 |
|---|---|---|
| orgs | []string |
spec.allow.impersonate#
| 필드 | 타입 | 설명 |
|---|---|---|
| roles | []string | Roles는 이 역할이 가장할 수 있는 리소스 목록입니다 |
| users | []string | Users는 이 역할이 가장할 수 있는 리소스 목록으로, 빈 목록이거나 와일드카드 패턴일 수 있습니다 |
| where | string | Where는 선택적 고급 매처를 지정합니다 |
spec.allow.join_sessions items#
| 필드 | 타입 | 설명 |
|---|---|---|
| kinds | []string | Kinds는 이 정책이 적용되는 세션 종류입니다. |
| modes | []string | Modes는 이 정책에 허용된 참가자 모드 목록입니다. |
| name | string | Name은 정책의 이름입니다. |
| roles | []string | Roles는 세션에 참여할 수 있는 역할 목록입니다. |
spec.allow.kubernetes_resources items#
| 필드 | 타입 | 설명 |
|---|---|---|
| api_group | string | APIGroup은 쿠버네티스 리소스의 쿠버네티스 API 그룹을 지정합니다. 와일드카드를 지원합니다. |
| kind | string | Kind는 쿠버네티스 리소스 타입을 지정합니다. |
| name | string | Name은 리소스 이름입니다. 와일드카드를 지원합니다. |
| namespace | string | Namespace는 리소스 네임스페이스입니다. 와일드카드를 지원합니다. |
| verbs | []string | Verbs는 다음 리소스에 허용된 쿠버네티스 동사입니다. |
spec.allow.mcp#
| 필드 | 타입 | 설명 |
|---|---|---|
| tools | []string | Tools는 이 역할에서 허용하거나 거부된 도구 목록을 정의합니다. 각 항목은 리터럴 문자열, 글로브 패턴(예: "prefix_*"), 또는 정규 표현식('^'으로 시작하고 '$'로 끝나야 함)일 수 있습니다. 목록이 비어 있으면 어떤 도구도 허용되지 않습니다. |
spec.allow.request#
| 필드 | 타입 | 설명 |
|---|---|---|
| annotations | object | Annotations는 생성 시 대기 중인 액세스 요청에 프로그래밍 방식으로 추가되는 어노테이션 모음입니다. 이 어노테이션은 플러그인에 추가 정보를 전파하는 메커니즘으로 사용됩니다. 이 어노테이션은 변수 보간 구문을 지원하므로 {{external.trait_name}} 스타일 대체를 통해 외부 아이덴티티 공급자의 클레임을 플러그인으로 전달하는 메커니즘도 제공합니다. |
| claims_to_roles | []object | ClaimsToRoles는 클레임(특성)에서 teleport 역할로의 매핑을 지정합니다. |
| kubernetes_resources | []object | kubernetes_resources는 요청자가 특정 종류의 쿠버네티스 리소스만 요청하도록 선택적으로 강제할 수 있습니다. 예: 사용자는 "kube_cluster" 리소스 종류 또는 "namespaces"와 같은 하위 리소스에 요청할 수 있습니다. 이 필드는 사용자가 "kube_cluster"를 요청하지 못하도록 방지하고 하위 리소스 요청을 강제하도록 정의할 수 있습니다. |
| max_duration | string | MaxDuration은 액세스가 허용되는 시간입니다. 0이면 기본 기간이 사용됩니다. |
| reason | object | Reason은 사용자가 제공하는 액세스 이유에 대한 설정을 정의합니다. |
| roles | []string | Roles는 요청 규칙과 일치할 역할의 이름입니다. |
| search_as_roles | []string | SearchAsRoles는 리소스 액세스 요청의 일부로 리소스를 검색하는 동안 사용자에게 적용되어야 하는 추가 역할 목록이며, 리소스 액세스 요청의 일부로 요청될 기반 역할을 정의합니다. |
| suggested_reviewers | []string | SuggestedReviewers는 검토자 제안 목록입니다. teleport 사용자 이름일 수 있지만 필수는 아닙니다. |
| thresholds | []object | Thresholds는 검토가 상태 전환을 트리거하기 위해 충족해야 하는 임계값 목록입니다. 임계값이 제공되지 않으면 승인 및 거부에 대해 기본 임계값 1이 사용됩니다. |
spec.allow.request.claims_to_roles items#
| 필드 | 타입 | 설명 |
|---|---|---|
| claim | string | Claim은 클레임 이름입니다. |
| roles | []string | Roles는 일치할 정적 teleport 역할 목록입니다. |
| value | string | Value는 일치할 클레임 값입니다. |
spec.allow.request.kubernetes_resources items#
| 필드 | 타입 | 설명 |
|---|---|---|
| api_group | string | APIGroup은 쿠버네티스 리소스 API 그룹을 지정합니다. |
| kind | string | kind는 쿠버네티스 리소스 타입을 지정합니다. |
spec.allow.request.reason#
| 필드 | 타입 | 설명 |
|---|---|---|
| mode | string | Mode는 "required" 또는 "optional"일 수 있습니다. 빈 문자열은 "optional"로 처리됩니다. 역할의 요청 이유 모드가 "required"로 설정된 경우, 이 역할이 허용하는 역할이나 리소스를 요청하는 모든 액세스 요청에 이유가 필요합니다. 이 역할이 할당된 사용자에게만 적용됩니다. |
| prompt | string | Prompt는 요청된 역할이나 리소스에 대해 사용자에게 표시되는 사용자 지정 메시지입니다. 프롬프트를 지정하는 요청된 역할 및 리소스에만 적용됩니다. |
spec.allow.request.thresholds items#
| 필드 | 타입 | 설명 |
|---|---|---|
| approve | integer | Approve는 상태 전환에 필요한 일치하는 승인 수입니다. |
| deny | integer | Deny는 상태 전환에 필요한 거부 수입니다. |
| filter | string | Filter는 이 임계값에 해당하는 검토를 결정하는 데 사용되는 선택적 조건자입니다. |
| name | string | Name은 임계값의 선택적 사람이 읽을 수 있는 이름입니다. |
spec.allow.require_session_join items#
| 필드 | 타입 | 설명 |
|---|---|---|
| count | integer | Count는 이 정책을 충족하기 위해 일치해야 하는 사람 수입니다. |
| filter | string | Filter는 이 정책에 포함되는 사용자를 결정하는 조건자입니다. |
| kinds | []string | Kinds는 이 정책이 적용되는 세션 종류입니다. |
| modes | []string | Modes는 이 정책을 충족하는 데 사용될 수 있는 모드 목록입니다. |
| name | string | Name은 정책의 이름입니다. |
| on_leave | string | OnLeave는 라이브 세션에서 정책이 더 이상 충족되지 않을 때 사용되는 동작입니다. |
spec.allow.review_requests#
| 필드 | 타입 | 설명 |
|---|---|---|
| claims_to_roles | []object | ClaimsToRoles는 클레임(특성)에서 teleport 역할로의 매핑을 지정합니다. |
| preview_as_roles | []string | PreviewAsRoles는 검토자가 요청된 리소스의 호스트 이름 및 레이블과 같은 세부 정보를 보기 위해 리소스 액세스 요청을 보는 동안 적용되어야 하는 추가 역할 목록입니다. |
| roles | []string | Roles는 검토될 수 있는 역할의 이름입니다. |
| where | string | Where는 검토 가능한 요청을 추가로 제한하는 선택적 조건자입니다. |
spec.allow.review_requests.claims_to_roles items#
| 필드 | 타입 | 설명 |
|---|---|---|
| claim | string | Claim은 클레임 이름입니다. |
| roles | []string | Roles는 일치할 정적 teleport 역할 목록입니다. |
| value | string | Value는 일치할 클레임 값입니다. |
spec.allow.rules items#
| 필드 | 타입 | 설명 |
|---|---|---|
| actions | []string | Actions는 이 규칙이 일치할 때 수행되는 선택적 작업을 지정합니다 |
| resources | []string | Resources는 리소스 목록입니다 |
| verbs | []string | Verbs는 동사 목록입니다 |
| where | string | Where는 선택적 고급 매처를 지정합니다 |
spec.allow.spiffe items#
| 필드 | 타입 | 설명 |
|---|---|---|
| dns_sans | []string | DNSSANs는 SPIFFE ID DNS SAN에 대한 매처를 지정합니다. 요청된 각 DNS SAN은 구성된 모든 매처와 비교되며 일치하는 것이 있으면 조건이 충족된 것으로 간주됩니다. 매처는 기본적으로 '*'를 사용하여 0개 이상의 문자를 나타냅니다. '^'를 앞에 추가하고 '$'를 뒤에 추가하면 Go 정규 표현식 구문을 사용하여 일치합니다. 예: *.example.com은 foo.example.com과 일치합니다 |
| ip_sans | []string | IPSANs는 SPIFFE ID IP SAN에 대한 매처를 지정합니다. 요청된 각 IP SAN은 구성된 모든 매처와 비교되며 일치하는 것이 있으면 조건이 충족된 것으로 간주됩니다. 매처는 CIDR 표기법을 사용하여 지정해야 하며 IPv4 및 IPv6을 지원합니다. 예: - 10.0.0.0/24는 10.0.0.0에서 10.255.255.255까지 일치 - 10.0.0.42/32는 10.0.0.42만 일치 |
| path | string | Path는 SPIFFE ID 경로에 대한 매처를 지정합니다. 신뢰 도메인을 포함하지 않아야 하며 선행 슬래시로 시작해야 합니다. 매처는 기본적으로 ''를 사용하여 0개 이상의 문자를 나타냅니다. '^'를 앞에 추가하고 '$'를 뒤에 추가하면 Go 정규 표현식 구문을 사용하여 일치합니다. 예: - /svc/foo//bar는 /svc/foo/baz/bar와 일치 - ^/svc/foo/.*/bar$는 /svc/foo/baz/bar와 일치 |
spec.deny#
| 필드 | 타입 | 설명 |
|---|---|---|
| account_assignments | []object | AccountAssignments는 이 조건의 영향을 받는 계정 할당 목록을 보유합니다. |
| app_labels | object | AppLabels는 RBAC 시스템의 일부로 사용되는 레이블 맵입니다. |
| app_labels_expression | string | AppLabelsExpression은 앱에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| aws_role_arns | []string | AWSRoleARNs는 이 역할이 위임할 수 있는 AWS 역할 ARN 목록입니다. |
| azure_identities | []string | AzureIdentities는 이 역할이 위임할 수 있는 Azure 아이덴티티 목록입니다. |
| cluster_labels | object | ClusterLabels는 클러스터에 대한 동적 액세스 권한 부여에 사용되는 노드 레이블 맵입니다. |
| cluster_labels_expression | string | ClusterLabelsExpression은 원격 Teleport 클러스터에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| db_labels | object | DatabaseLabels는 데이터베이스에 대한 액세스를 허용/거부하는 RBAC 시스템에서 사용됩니다. |
| db_labels_expression | string | DatabaseLabelsExpression은 데이터베이스에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| db_names | []string | DatabaseNames는 이 역할이 연결할 수 있는 데이터베이스 이름 목록입니다. |
| db_permissions | []object | DatabasePermissions는 자동 데이터베이스 사용자 프로비저닝 시 데이터베이스 사용자에게 부여될 권한 집합을 지정합니다. |
| db_roles | []string | DatabaseRoles는 자동 사용자 생성을 위한 데이터베이스 역할 목록입니다. |
| db_service_labels | object | DatabaseServiceLabels는 데이터베이스 서비스에 대한 액세스를 허용/거부하는 RBAC 시스템에서 사용됩니다. |
| db_service_labels_expression | string | DatabaseServiceLabelsExpression은 데이터베이스 서비스에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| db_users | []string | DatabaseUsers는 이 역할이 연결할 수 있는 데이터베이스 사용자 목록입니다. |
| desktop_groups | []string | DesktopGroups는 생성된 데스크톱 사용자가 추가될 그룹 목록입니다 |
| gcp_service_accounts | []string | GCPServiceAccounts는 이 역할이 위임할 수 있는 GCP 서비스 계정 목록입니다. |
| github_permissions | []object | GitHubPermissions는 GitHub 통합 관련 권한을 정의합니다. |
| group_labels | object | GroupLabels는 RBAC 시스템의 일부로 사용되는 레이블 맵입니다. |
| group_labels_expression | string | GroupLabelsExpression은 사용자 그룹에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| host_groups | []string | HostGroups는 생성된 사용자가 추가될 그룹 목록입니다 |
| host_sudoers | []string | HostSudoers는 사용자 sudoer 파일에 포함할 항목 목록입니다 |
| impersonate | object | Impersonate는 이 역할이 인증서 발급 또는 기타 수단을 통해 가장할 수 있는 사용자와 역할을 지정합니다. |
| join_sessions | []object | JoinSessions는 사용자가 다른 세션에 참여할 수 있도록 하는 정책을 지정합니다. |
| kubernetes_groups | []string | KubeGroups는 쿠버네티스 그룹 목록입니다 |
| kubernetes_labels | object | KubernetesLabels는 RBAC에 사용되는 쿠버네티스 클러스터 레이블 맵입니다. |
| kubernetes_labels_expression | string | KubernetesLabelsExpression은 쿠버네티스 클러스터에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| kubernetes_resources | []object | KubernetesResources는 이 역할이 액세스 권한을 부여하는 쿠버네티스 리소스입니다. |
| kubernetes_users | []string | KubeUsers는 가장할 선택적 쿠버네티스 사용자입니다 |
| logins | []string | Logins는 *nix 시스템 로그인 목록입니다. |
| mcp | object | MCPPermissions는 MCP 서버 관련 권한을 정의합니다. |
| node_labels | object | NodeLabels는 노드에 대한 동적 액세스 권한 부여에 사용되는 노드 레이블 맵입니다. |
| node_labels_expression | string | NodeLabelsExpression은 SSH 노드에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| request | object | |
| require_session_join | []object | RequireSessionJoin은 세션을 시작하는 데 필요한 사용자에 대한 정책을 지정합니다. |
| review_requests | object | ReviewRequests는 액세스 검토 제출 조건을 정의합니다. |
| rules | []object | Rules는 규칙과 액세스 수준 목록입니다. 규칙은 액세스 제어에 사용되는 고수준 구성입니다. |
| spiffe | []object | SPIFFE는 역할 보유자가 SPIFFE SVID를 생성하는 것에 대한 액세스를 허용하거나 거부하는 데 사용됩니다. |
| windows_desktop_labels | object | WindowsDesktopLabels는 Windows 데스크톱에 대한 액세스를 허용/거부하는 RBAC 시스템에서 사용됩니다. |
| windows_desktop_labels_expression | string | WindowsDesktopLabelsExpression은 Windows 데스크톱에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
| windows_desktop_logins | []string | WindowsDesktopLogins는 Windows 데스크톱에서 허용/거부된 데스크톱 로그인 이름 목록입니다. |
| workload_identity_labels | object | WorkloadIdentityLabels는 특정 WorkloadIdentity 리소스를 호출할 수 있는지 여부를 제어합니다. 추가 인증 제어는 WorkloadIdentity 리소스 자체에 존재합니다. |
| workload_identity_labels_expression | string | WorkloadIdentityLabelsExpression은 WorkloadIdentity 발급에 대한 액세스를 허용/거부하는 데 사용되는 조건자 표현식입니다. |
spec.deny.account_assignments items#
| 필드 | 타입 | 설명 |
|---|---|---|
| account | string | |
| permission_set | string |
spec.deny.db_permissions items#
| 필드 | 타입 | 설명 |
|---|---|---|
| match | object | Match는 권한을 부여하기 위해 일치해야 하는 객체 레이블 목록입니다. |
| permissions | []string | Permission은 부여될 권한의 문자열 표현 목록입니다. 예: SELECT, INSERT, UPDATE, ... |
spec.deny.github_permissions items#
| 필드 | 타입 | 설명 |
|---|---|---|
| orgs | []string |
spec.deny.impersonate#
| 필드 | 타입 | 설명 |
|---|---|---|
| roles | []string | Roles는 이 역할이 가장할 수 있는 리소스 목록입니다 |
| users | []string | Users는 이 역할이 가장할 수 있는 리소스 목록으로, 빈 목록이거나 와일드카드 패턴일 수 있습니다 |
| where | string | Where는 선택적 고급 매처를 지정합니다 |
spec.deny.join_sessions items#
| 필드 | 타입 | 설명 |
|---|---|---|
| kinds | []string | Kinds는 이 정책이 적용되는 세션 종류입니다. |
| modes | []string | Modes는 이 정책에 허용된 참가자 모드 목록입니다. |
| name | string | Name은 정책의 이름입니다. |
| roles | []string | Roles는 세션에 참여할 수 있는 역할 목록입니다. |
spec.deny.kubernetes_resources items#
| 필드 | 타입 | 설명 |
|---|---|---|
| api_group | string | APIGroup은 쿠버네티스 리소스의 쿠버네티스 API 그룹을 지정합니다. 와일드카드를 지원합니다. |
| kind | string | Kind는 쿠버네티스 리소스 타입을 지정합니다. |
| name | string | Name은 리소스 이름입니다. 와일드카드를 지원합니다. |
| namespace | string | Namespace는 리소스 네임스페이스입니다. 와일드카드를 지원합니다. |
| verbs | []string | Verbs는 다음 리소스에 허용된 쿠버네티스 동사입니다. |
spec.deny.mcp#
| 필드 | 타입 | 설명 |
|---|---|---|
| tools | []string | Tools는 이 역할에서 허용하거나 거부된 도구 목록을 정의합니다. 각 항목은 리터럴 문자열, 글로브 패턴(예: "prefix_*"), 또는 정규 표현식('^'으로 시작하고 '$'로 끝나야 함)일 수 있습니다. 목록이 비어 있으면 어떤 도구도 허용되지 않습니다. |
spec.deny.request#
| 필드 | 타입 | 설명 |
|---|---|---|
| annotations | object | Annotations는 생성 시 대기 중인 액세스 요청에 프로그래밍 방식으로 추가되는 어노테이션 모음입니다. 이 어노테이션은 플러그인에 추가 정보를 전파하는 메커니즘으로 사용됩니다. 이 어노테이션은 변수 보간 구문을 지원하므로 {{external.trait_name}} 스타일 대체를 통해 외부 아이덴티티 공급자의 클레임을 플러그인으로 전달하는 메커니즘도 제공합니다. |
| claims_to_roles | []object | ClaimsToRoles는 클레임(특성)에서 teleport 역할로의 매핑을 지정합니다. |
| kubernetes_resources | []object | kubernetes_resources는 요청자가 특정 종류의 쿠버네티스 리소스만 요청하도록 선택적으로 강제할 수 있습니다. 예: 사용자는 "kube_cluster" 리소스 종류 또는 "namespaces"와 같은 하위 리소스에 요청할 수 있습니다. 이 필드는 사용자가 "kube_cluster"를 요청하지 못하도록 방지하고 하위 리소스 요청을 강제하도록 정의할 수 있습니다. |
| max_duration | string | MaxDuration은 액세스가 허용되는 시간입니다. 0이면 기본 기간이 사용됩니다. |
| reason | object | Reason은 사용자가 제공하는 액세스 이유에 대한 설정을 정의합니다. |
| roles | []string | Roles는 요청 규칙과 일치할 역할의 이름입니다. |
| search_as_roles | []string | SearchAsRoles는 리소스 액세스 요청의 일부로 리소스를 검색하는 동안 사용자에게 적용되어야 하는 추가 역할 목록이며, 리소스 액세스 요청의 일부로 요청될 기반 역할을 정의합니다. |
| suggested_reviewers | []string | SuggestedReviewers는 검토자 제안 목록입니다. teleport 사용자 이름일 수 있지만 필수는 아닙니다. |
| thresholds | []object | Thresholds는 검토가 상태 전환을 트리거하기 위해 충족해야 하는 임계값 목록입니다. 임계값이 제공되지 않으면 승인 및 거부에 대해 기본 임계값 1이 사용됩니다. |
spec.deny.request.claims_to_roles items#
| 필드 | 타입 | 설명 |
|---|---|---|
| claim | string | Claim은 클레임 이름입니다. |
| roles | []string | Roles는 일치할 정적 teleport 역할 목록입니다. |
| value | string | Value는 일치할 클레임 값입니다. |
spec.deny.request.kubernetes_resources items#
| 필드 | 타입 | 설명 |
|---|---|---|
| api_group | string | APIGroup은 쿠버네티스 리소스 API 그룹을 지정합니다. |
| kind | string | kind는 쿠버네티스 리소스 타입을 지정합니다. |
spec.deny.request.reason#
| 필드 | 타입 | 설명 |
|---|---|---|
| mode | string | Mode는 "required" 또는 "optional"일 수 있습니다. 빈 문자열은 "optional"로 처리됩니다. 역할의 요청 이유 모드가 "required"로 설정된 경우, 이 역할이 허용하는 역할이나 리소스를 요청하는 모든 액세스 요청에 이유가 필요합니다. 이 역할이 할당된 사용자에게만 적용됩니다. |
| prompt | string | Prompt는 요청된 역할이나 리소스에 대해 사용자에게 표시되는 사용자 지정 메시지입니다. 프롬프트를 지정하는 요청된 역할 및 리소스에만 적용됩니다. |
spec.deny.request.thresholds items#
| 필드 | 타입 | 설명 |
|---|---|---|
| approve | integer | Approve는 상태 전환에 필요한 일치하는 승인 수입니다. |
| deny | integer | Deny는 상태 전환에 필요한 거부 수입니다. |
| filter | string | Filter는 이 임계값에 해당하는 검토를 결정하는 데 사용되는 선택적 조건자입니다. |
| name | string | Name은 임계값의 선택적 사람이 읽을 수 있는 이름입니다. |
spec.deny.require_session_join items#
| 필드 | 타입 | 설명 |
|---|---|---|
| count | integer | Count는 이 정책을 충족하기 위해 일치해야 하는 사람 수입니다. |
| filter | string | Filter는 이 정책에 포함되는 사용자를 결정하는 조건자입니다. |
| kinds | []string | Kinds는 이 정책이 적용되는 세션 종류입니다. |
| modes | []string | Modes는 이 정책을 충족하는 데 사용될 수 있는 모드 목록입니다. |
| name | string | Name은 정책의 이름입니다. |
| on_leave | string | OnLeave는 라이브 세션에서 정책이 더 이상 충족되지 않을 때 사용되는 동작입니다. |
spec.deny.review_requests#
| 필드 | 타입 | 설명 |
|---|---|---|
| claims_to_roles | []object | ClaimsToRoles는 클레임(특성)에서 teleport 역할로의 매핑을 지정합니다. |
| preview_as_roles | []string | PreviewAsRoles는 검토자가 요청된 리소스의 호스트 이름 및 레이블과 같은 세부 정보를 보기 위해 리소스 액세스 요청을 보는 동안 적용되어야 하는 추가 역할 목록입니다. |
| roles | []string | Roles는 검토될 수 있는 역할의 이름입니다. |
| where | string | Where는 검토 가능한 요청을 추가로 제한하는 선택적 조건자입니다. |
spec.deny.review_requests.claims_to_roles items#
| 필드 | 타입 | 설명 |
|---|---|---|
| claim | string | Claim은 클레임 이름입니다. |
| roles | []string | Roles는 일치할 정적 teleport 역할 목록입니다. |
| value | string | Value는 일치할 클레임 값입니다. |
spec.deny.rules items#
| 필드 | 타입 | 설명 |
|---|---|---|
| actions | []string | Actions는 이 규칙이 일치할 때 수행되는 선택적 작업을 지정합니다 |
| resources | []string | Resources는 리소스 목록입니다 |
| verbs | []string | Verbs는 동사 목록입니다 |
| where | string | Where는 선택적 고급 매처를 지정합니다 |
spec.deny.spiffe items#
| 필드 | 타입 | 설명 |
|---|---|---|
| dns_sans | []string | DNSSANs는 SPIFFE ID DNS SAN에 대한 매처를 지정합니다. 요청된 각 DNS SAN은 구성된 모든 매처와 비교되며 일치하는 것이 있으면 조건이 충족된 것으로 간주됩니다. 매처는 기본적으로 '*'를 사용하여 0개 이상의 문자를 나타냅니다. '^'를 앞에 추가하고 '$'를 뒤에 추가하면 Go 정규 표현식 구문을 사용하여 일치합니다. 예: *.example.com은 foo.example.com과 일치합니다 |
| ip_sans | []string | IPSANs는 SPIFFE ID IP SAN에 대한 매처를 지정합니다. 요청된 각 IP SAN은 구성된 모든 매처와 비교되며 일치하는 것이 있으면 조건이 충족된 것으로 간주됩니다. 매처는 CIDR 표기법을 사용하여 지정해야 하며 IPv4 및 IPv6을 지원합니다. 예: - 10.0.0.0/24는 10.0.0.0에서 10.255.255.255까지 일치 - 10.0.0.42/32는 10.0.0.42만 일치 |
| path | string | Path는 SPIFFE ID 경로에 대한 매처를 지정합니다. 신뢰 도메인을 포함하지 않아야 하며 선행 슬래시로 시작해야 합니다. 매처는 기본적으로 ''를 사용하여 0개 이상의 문자를 나타냅니다. '^'를 앞에 추가하고 '$'를 뒤에 추가하면 Go 정규 표현식 구문을 사용하여 일치합니다. 예: - /svc/foo//bar는 /svc/foo/baz/bar와 일치 - ^/svc/foo/.*/bar$는 /svc/foo/baz/bar와 일치 |
spec.options#
| 필드 | 타입 | 설명 |
|---|---|---|
| cert_extensions | []object | CertExtensions는 키/값을 지정합니다 |
| cert_format | string | CertificateFormat은 이전 버전의 OpenSSH와의 호환성을 위한 사용자 인증서 형식을 정의합니다. |
| client_idle_timeout | string | ClientIdleTimeout은 유휴 타임아웃 시 클라이언트 연결 해제 동작을 설정합니다. 0으로 설정하면 연결 해제하지 않으며, 그렇지 않으면 유휴 기간으로 설정됩니다. |
| create_db_user | boolean | CreateDatabaseUser는 자동 데이터베이스 사용자 생성을 활성화합니다. |
| create_db_user_mode | string or integer | CreateDatabaseUserMode는 off로 설정되지 않은 경우 데이터베이스에서 사용자를 자동으로 생성할 수 있게 합니다. 0은 "unspecified", 1은 "off", 2는 "keep", 3은 "best_effort_drop"입니다. 각 옵션의 문자열 또는 정수 표현 중 하나일 수 있습니다. |
| create_desktop_user | boolean | CreateDesktopUser는 Windows 데스크톱에서 사용자를 자동으로 생성할 수 있게 합니다 |
| create_host_user | boolean | 더 이상 사용되지 않음: 대신 CreateHostUserMode를 사용하세요. |
| create_host_user_default_shell | string | CreateHostUserDefaultShell은 새로 프로비저닝된 호스트 사용자의 기본 셸을 구성하는 데 사용됩니다. |
| create_host_user_mode | string or integer | CreateHostUserMode는 off로 설정되지 않은 경우 호스트에서 사용자를 자동으로 생성할 수 있게 합니다. 0은 "unspecified"; 1은 "off"; 2는 "drop"(v15 이상에서 제거됨), 3은 "keep"; 4는 "insecure-drop"입니다. 각 옵션의 문자열 또는 정수 표현 중 하나일 수 있습니다. |
| desktop_clipboard | boolean | DesktopClipboard는 사용자의 워크스테이션과 원격 데스크톱 간의 클립보드 공유 허용 여부를 나타냅니다. 명시적으로 false로 설정하지 않는 한 기본값은 true입니다. |
| desktop_directory_sharing | boolean | DesktopDirectorySharing은 사용자의 워크스테이션과 원격 데스크톱 간의 디렉터리 공유 허용 여부를 나타냅니다. 명시적으로 true로 설정하지 않는 한 기본값은 false입니다. |
| device_trust_mode | string | DeviceTrustMode는 역할과 관련된 리소스에 사용되는 기기 인증 모드입니다. DeviceTrust.Mode를 참조하세요. |
| disconnect_expired_cert | boolean | DisconnectExpiredCert는 만료된 인증서에서 클라이언트 연결 해제를 설정합니다. |
| enhanced_recording | []string | BPF는 BPF 기반 세션 레코더에 대해 기록할 이벤트를 정의합니다. |
| forward_agent | boolean | ForwardAgent는 SSH 에이전트 포워딩입니다. |
| idp | object | IDP는 Teleport 내에서 IdP에 액세스하는 것과 관련된 옵션 집합입니다. Teleport Enterprise가 필요합니다. |
| lock | string | Lock은 역할에 적용될 잠금 모드(strict |
| max_connections | integer | MaxConnections는 사용자가 보유할 수 있는 최대 동시 연결 수를 정의합니다. |
| max_kubernetes_connections | integer | MaxKubernetesConnections는 사용자가 보유할 수 있는 최대 동시 쿠버네티스 세션 수를 정의합니다. |
| max_session_ttl | string | MaxSessionTTL은 SSH 세션이 지속될 수 있는 기간을 정의합니다. |
| max_sessions | integer | MaxSessions는 연결당 최대 동시 세션 수를 정의합니다. |
| mfa_verification_interval | string | MFAVerificationInterval은 선택적으로 연속 MFA 확인 사이에 경과할 수 있는 최대 기간을 정의합니다. 이 변수는 tsh proxy * 파생물을 사용할 때 재인증 없이 장기간 세션을 방지하여 사용자가 주기적으로 신원을 확인하도록 프롬프트를 표시하는 데 사용됩니다. 세션에 MFA가 필요한 경우에만 적용됩니다. 설정되지 않으면 max_session_ttl로 기본 설정됩니다. |
| permit_x11_forwarding | boolean | PermitX11Forwarding은 X11 포워딩 사용을 인증합니다. |
| pin_source_ip | boolean | PinSourceIP는 인증서 생성 및 사용에 동일한 클라이언트 IP를 강제합니다 |
| port_forwarding | boolean | 더 이상 사용되지 않음: 대신 SSHPortForwarding을 사용하세요 |
| record_session | object | RecordDesktopSession은 데스크톱 액세스 세션이 기록되어야 하는지 여부를 나타냅니다. 명시적으로 false로 설정하지 않는 한 기본값은 true입니다. |
| request_access | string | RequestAccess는 요청 전략(optional |
| request_prompt | string | RequestPrompt는 사용자에게 무엇을 요청해야 하는지 알려주는 선택적 메시지입니다. |
| require_session_mfa | string or integer | RequireMFAType은 이 사용자에게 적용되는 MFA 요구 사항의 유형입니다. 0은 "OFF", 1은 "SESSION", 2는 "SESSION_AND_HARDWARE_KEY", 3은 "HARDWARE_KEY_TOUCH", 4는 "HARDWARE_KEY_PIN", 5는 "HARDWARE_KEY_TOUCH_AND_PIN"입니다. 각 옵션의 문자열 또는 정수 표현 중 하나일 수 있습니다. |
| ssh_file_copy | boolean | SSHFileCopy는 SSH 세션을 통한 SCP 또는 SFTP를 통한 원격 파일 작업이 허용되는지 여부를 나타냅니다. 명시적으로 false로 설정하지 않는 한 기본값은 true입니다. |
| ssh_port_forwarding | object | SSHPortForwarding은 역할이 허용하는 SSH 포트 포워딩 유형을 구성합니다. |
spec.options.cert_extensions items#
| 필드 | 타입 | 설명 |
|---|---|---|
| mode | string or integer | Mode는 사용될 확장의 유형입니다 -- 현재 critical-option은 지원되지 않습니다. 0은 "extension"입니다. 각 옵션의 문자열 또는 정수 표현 중 하나일 수 있습니다. |
| name | string | Name은 인증서 확장에 사용될 키를 지정합니다. |
| type | string or integer | Type은 확장되는 인증서 유형을 나타내며 현재는 ssh만 지원됩니다. 0은 "ssh"입니다. 각 옵션의 문자열 또는 정수 표현 중 하나일 수 있습니다. |
| value | string | Value는 인증서 확장에 사용될 값을 지정합니다. |
spec.options.idp#
| 필드 | 타입 | 설명 |
|---|---|---|
| saml | object | SAML은 Teleport SAML IdP와 관련된 옵션입니다. |
spec.options.idp.saml#
| 필드 | 타입 | 설명 |
|---|---|---|
| enabled | boolean | Enabled는 이 옵션이 Teleport SAML IdP에 대한 액세스를 허용하는 경우 true로 설정됩니다. |
spec.options.record_session#
| 필드 | 타입 | 설명 |
|---|---|---|
| default | string | Default는 서비스의 기본값을 나타냅니다. |
| desktop | boolean | Desktop은 데스크톱 세션이 기록되어야 하는지 여부를 나타냅니다. 명시적으로 false로 설정하지 않는 한 기본값은 true입니다. |
| ssh | string | SSH는 SSH 세션에서 사용되는 세션 모드를 나타냅니다. |
spec.options.ssh_port_forwarding#
spec.options.ssh_port_forwarding.local#
| 필드 | 타입 | 설명 |
|---|---|---|
| enabled | boolean |
spec.options.ssh_port_forwarding.remote#
| 필드 | 타입 | 설명 |
|---|---|---|
| enabled | boolean |
