teleport_scoped_token Terraform 리소스 참조
이 페이지는 Teleport Terraform 공급자의 teleport_scoped_token 리소스에서 지원되는 값을 설명합니다.
사용 예제#
# Teleport Scoped Token resource
# A scoped token with unlimited usage for provisioning nodes within a sub-scope.
resource "teleport_scoped_token" "example" {
version = "v1"
metadata = {
name = "example-node-token"
description = "Token for provisioning nodes in the /prod/us-east scope"
labels = {
env = "production22"
}
}
scope = "/prod"
spec = {
assigned_scope = "/prod/us-east"
roles = ["Node"]
join_method = "token"
usage_mode = "unlimited"
}
}
# A single-use scoped token that can only provision one resource.
resource "teleport_scoped_token" "single_use" {
version = "v1"
metadata = {
name = "example-single-use-token"
expires = "2026-12-31T00:00:00Z"
}
scope = "/staging"
spec = {
assigned_scope = "/staging/eu-west"
roles = ["Node"]
join_method = "token"
usage_mode = "single_use"
}
}
스키마#
필수#
metadata(Attributes) Metadata는 리소스 메타데이터를 포함합니다. (아래 중첩 스키마 참조)scope(String) Scope는 토큰 리소스의 스코프입니다.spec(Attributes) Spec은 토큰 명세입니다. (아래 중첩 스키마 참조)version(String) Version은 리소스 버전입니다.
선택적#
sub_kind(String) SubKind는 리소스 하위 종류입니다.
metadata에 대한 중첩 스키마#
필수:
name(String) name은 객체 이름입니다.
선택적:
description(String) description은 객체 설명입니다.expires(String) expires는 시스템의 모든 리소스에 설정할 수 있는 전역 만료 시간 헤더입니다.labels(Map of String) labels는 레이블 집합입니다.
spec에 대한 중첩 스키마#
필수:
assigned_scope(String) 이 토큰이 할당된 스코프입니다. 토큰 자체의 스코프와 동일하거나 하위 스코프여야 합니다.join_method(String) 이 토큰을 사용하기 위해 필요한 조인 방법입니다. 스코프 토큰의 경우 지원되는 조인 방법은 'token'만 포함됩니다.roles(List of String) 토큰과 연결된 역할 목록입니다. 토큰 사용자에게 발급된 SSH 및 X509 인증서의 메타데이터로 변환됩니다.usage_mode(String) 토큰의 사용 모드입니다. "single_use" 또는 "unlimited"일 수 있습니다. 단일 사용 토큰은 단일 리소스만 프로비저닝하는 데 사용할 수 있습니다. 무제한 토큰은 만료될 때까지 여러 리소스를 프로비저닝하는 데 사용할 수 있습니다.
선택적:
aws(Attributes) "ec2" 및 "iam" 조인 방법에 사용되는 AWS 특정 구성입니다. (아래 중첩 스키마 참조)azure(Attributes) "azure" 조인 방법에 사용되는 Azure 특정 구성입니다. (아래 중첩 스키마 참조)azure_devops(Attributes) "azure_devops" 조인 방법에 사용되는 Azure DevOps 특정 구성입니다. (아래 중첩 스키마 참조)gcp(Attributes) "gcp" 조인 방법에 사용되는 GCP 특정 구성입니다. (아래 중첩 스키마 참조)immutable_labels(Attributes) 이 토큰을 사용하여 프로비저닝된 모든 결과 리소스에 적용될 변경 불가능한 레이블입니다. (아래 중첩 스키마 참조)oracle(Attributes) "oracle" 조인 방법에 사용되는 Oracle 특정 구성입니다. (아래 중첩 스키마 참조)
spec.aws에 대한 중첩 스키마#
선택적:
allow(Attributes List) 이 토큰 사용을 허용하는 규칙 목록입니다. 노드는 이 토큰을 사용하기 위해 최소 하나의 허용 규칙과 일치해야 합니다. (아래 중첩 스키마 참조)iid_ttl(String) 이 토큰으로 클러스터에 조인하는 데 사용되는 AWS EC2 인스턴스 아이덴티티 문서에 사용할 TTL입니다. "8h" 또는 "6mo"와 같은 기간 문자열이어야 합니다.integration(String) 조인 시도를 검증하기 위한 자격증명을 제공하는 통합 이름입니다. 현재 IAM 조인 방법에서 AWS 조직 ID 검증에만 사용됩니다.
spec.aws.allow에 대한 중첩 스키마#
선택적:
aws_account(String) AWS 계정 ID입니다.aws_arn(String) IAM 조인 방법에 사용할 조인하는 아이덴티티의 ARN입니다. 와일드카드 "*" 및 "?"를 지원합니다.aws_organization_id(String) IAM 조인 방법 사용 시 조인하는 AWS 아이덴티티가 속해야 하는 조직 ID입니다.aws_regions(List of String) EC2 조인 방법 사용 시 노드가 조인할 수 있는 AWS 지역 목록입니다.aws_role(String) EC2 조인 방법 사용 시 Auth 서비스가 EC2 API를 호출하기 위해 맡을 역할의 ARN입니다.
spec.azure에 대한 중첩 스키마#
선택적:
allow(Attributes List) 이 토큰 사용을 허용하는 규칙 목록입니다. 노드는 이 토큰을 사용하기 위해 최소 하나의 허용 규칙과 일치해야 합니다. (아래 중첩 스키마 참조)
spec.azure.allow에 대한 중첩 스키마#
선택적:
resource_groups(List of String) 노드가 조인할 수 있는 Azure 리소스 그룹 목록입니다.subscription(String) Azure 구독입니다.
spec.azure_devops에 대한 중첩 스키마#
선택적:
allow(Attributes List) 이 토큰 사용을 허용하는 규칙 목록입니다. 노드는 이 토큰을 사용하기 위해 최소 하나의 허용 규칙과 일치해야 합니다. (아래 중첩 스키마 참조)organization_id(String) 이 조인 토큰이 접근 권한을 부여할 Azure DevOps 조직의 UUID입니다. ID 토큰의 올바른 발급자 검증을 식별하는 데 사용됩니다. 필수 필드입니다.
spec.azure_devops.allow에 대한 중첩 스키마#
선택적:
definition_id(String) AZDO 파이프라인 정의의 ID입니다. 예:1def_id클레임에서 매핑됩니다.pipeline_name(String) AZDO 파이프라인의 이름입니다. 예:my-pipeline.sub클레임에서 추출됩니다.project_id(String) AZDO 파이프라인의 ID입니다. 예:271ef6f7-0000-0000-0000-4b54d9129990prj_id클레임에서 매핑됩니다.project_name(String) AZDO 프로젝트의 이름입니다. 예:my-project.sub클레임에서 추출됩니다.repository_ref(String) 파이프라인이 사용하는 저장소의 참조입니다. 예:refs/heads/main.rpo_ref클레임에서 매핑됩니다.repository_uri(String) 파이프라인이 사용하는 저장소의 URI입니다. 예:https://github.com/gravitational/teleport.git.rpo_uri클레임에서 매핑됩니다.repository_version(String) 파이프라인이 사용하는 저장소의 개별 커밋입니다. 예:e6b9eb29a288b27a3a82cc19c48b9d94b80aff36.rpo_ver클레임에서 매핑됩니다.sub(String) 워크로드를 대략적으로 고유하게 식별하는 주체 문자열입니다. 예:p://my-organization/my-project/my-pipelinesub클레임에서 매핑됩니다.
spec.gcp에 대한 중첩 스키마#
선택적:
allow(Attributes List) 이 토큰 사용을 허용하는 규칙 목록입니다. 노드는 이 토큰을 사용하기 위해 최소 하나의 허용 규칙과 일치해야 합니다. (아래 중첩 스키마 참조)
spec.gcp.allow에 대한 중첩 스키마#
선택적:
locations(List of String) 지역(예: "us-west1") 및/또는 영역(예: "us-west1-b") 목록입니다.project_ids(List of String) 프로젝트 ID 목록입니다(예:<example-id-123456>).service_accounts(List of String) 서비스 계정 이메일 목록입니다(예:<project-number>-compute@developer.gserviceaccount.com).
spec.immutable_labels에 대한 중첩 스키마#
선택적:
ssh(Map of String) SSH 노드에 적용될 레이블입니다.
spec.oracle에 대한 중첩 스키마#
선택적:
allow(Attributes List) 이 토큰 사용을 허용하는 규칙 목록입니다. 노드는 이 토큰을 사용하기 위해 최소 하나의 허용 규칙과 일치해야 합니다. (아래 중첩 스키마 참조)
spec.oracle.allow에 대한 중첩 스키마#
선택적:
instances(List of String) 조인이 허용된 특정 인스턴스의 OCID 목록입니다. 비어 있으면 규칙의 다른 필드와 일치하는 모든 인스턴스가 허용됩니다. 규칙당 최대 100개의 인스턴스 OCID로 제한됩니다.parent_compartments(List of String) 인스턴스가 조인할 수 있는 컴파트먼트의 OCID 목록입니다. 직접 부모만 허용되며, 중첩된 컴파트먼트는 허용되지 않습니다. 비어 있으면 모든 컴파트먼트가 허용됩니다.regions(List of String) 인스턴스가 조인할 수 있는 지역 목록입니다. 전체 지역 이름("us-phoenix-1")과 약어("phx") 모두 허용됩니다. 비어 있으면 모든 지역이 허용됩니다.tenancy(String) 인스턴스 테넌시의 OCID입니다. 필수입니다.
