Infograb logo
TeleportProvisionToken

이 가이드는 Teleport Kubernetes 운영자를 설치한 후 적용할 수 있는 TeleportProvisionToken 리소스의 필드에 대한 종합적인 참조입니다.

resources.teleport.dev/v2

apiVersion: resources.teleport.dev/v2

FieldTypeDescription
apiVersionstringAPIVersion은 객체의 이 표현에 대한 버전화된 스키마를 정의합니다. 서버는 인식된 스키마를 최신 내부 값으로 변환해야 하며, 인식되지 않은 값은 거부할 수 있습니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
kindstringKind는 이 객체가 나타내는 REST 리소스를 나타내는 문자열 값입니다. 서버는 클라이언트가 요청을 제출하는 엔드포인트에서 이를 추론할 수 있습니다. 업데이트할 수 없습니다. CamelCase로 작성됩니다. 자세한 정보: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
metadataobject
specobjectTeleport의 ProvisionToken 리소스 정의 v2

spec

FieldTypeDescription
allow[]objectAllow는 이 토큰을 사용하기 위해 해당하는 규칙을 만족해야 하는 토큰 규칙의 목록입니다.
aws_iid_ttlstringAWSIIDTTL은 이 토큰으로 클러스터에 조인하기 위해 사용되는 AWS EC2 인스턴스 아이덴티티 문서의 TTL입니다.
azureobjectAzure는 "azure" 조인 방법에 특정한 옵션 구성을 허용합니다.
bot_namestringBotName은 이 토큰이 접근을 허용하는 봇의 이름입니다.
circleciobjectCircleCI는 "circleci" 조인 방법에 특정한 옵션 구성을 허용합니다.
gcpobjectGCP는 "gcp" 조인 방법에 특정한 옵션 구성을 허용합니다.
githubobjectGitHub는 "github" 조인 방법에 특정한 옵션 구성을 허용합니다.
gitlabobjectGitLab은 "gitlab" 조인 방법에 특정한 옵션 구성을 허용합니다.
join_methodstringJoinMethod는 이 토큰을 사용하기 위해 필요한 조인 방법입니다. 지원되는 조인 방법은: azure, circleci, ec2, gcp, github, gitlab, iam, kubernetes, spacelift, token, tpm입니다.
kubernetesobjectKubernetes는 "kubernetes" 조인 방법에 특정한 옵션 구성을 허용합니다.
roles[]stringRoles는 토큰과 연결된 역할의 목록이며, 이는 토큰 사용자의 SSH 및 X509 인증서에 메타데이터로 변환됩니다.
spaceliftobjectSpacelift는 "spacelift" 조인 방법에 특정한 옵션 구성을 허용합니다.
suggested_agent_matcher_labelsobjectSuggestedAgentMatcherLabels는 에이전트가 리소스에 맞춰 사용할 레이블 세트입니다. 이 토큰을 사용하는 에이전트는 이러한 레이블과 일치하는 리소스를 모니터링해야 합니다. 데이터베이스의 경우, 이는 db_service.resources.labels 에 레이블을 추가하는 것을 의미합니다. 현재 노드 조인 스크립트만 이 제안에 따라 구성을 생성합니다.
suggested_labelsobjectSuggestedLabels는 이 토큰을 사용하여 클러스터에 등록할 때 리소스가 설정해야 하는 레이블 세트입니다. 현재 노드 조인 스크립트만 이 제안에 따라 구성을 생성합니다.
terraform_cloudobjectTerraformCloud는 "terraform_cloud" 조인 방법에 특정한 옵션 구성을 허용합니다.
tpmobjectTPM은 "tpm" 조인 방법에 특정한 옵션 구성을 허용합니다.

spec.allow 항목

필드타입설명
aws_accountstringAWSAccount는 AWS 계정 ID입니다.
aws_arnstringAWSARN은 IAM 조인 방법에 사용되며, 조인하는 노드의 AWS ID는 이 ARN과 일치해야 합니다. 와일드카드 "*" 및 "?"를 지원합니다.
aws_regions[]stringAWSRegions는 EC2 조인 방법에 사용되며, 노드가 조인할 수 있는 AWS 지역 목록입니다.
aws_rolestringAWSRole은 EC2 조인 방법에 사용되며, Auth Service가 ec2 API를 호출하기 위해 가정할 AWS 역할의 ARN입니다.

spec.azure

필드타입설명
allow[]objectAllow는 규칙의 목록이며, 이 토큰을 사용하는 노드는 이 토큰을 사용하기 위해 하나의 allow 규칙과 일치해야 합니다.

spec.azure.allow 항목

필드타입설명
resource_groups[]string
subscriptionstring

spec.circleci

필드타입설명
allow[]objectAllow는 TokenRules의 목록이며, 이 토큰을 사용하는 노드는 이 토큰을 사용하기 위해 하나의 allow 규칙과 일치해야 합니다.
organization_idstring

spec.circleci.allow 항목

필드타입설명
context_idstring
project_idstring

spec.gcp

필드타입설명
allow[]objectAllow는 규칙의 목록이며, 이 토큰을 사용하는 노드는 이 토큰을 사용하기 위해 하나의 allow 규칙과 일치해야 합니다.

spec.gcp.allow 항목

필드타입설명
locations[]string
project_ids[]string
service_accounts[]string

spec.github

필드타입설명
allow[]objectAllow는 TokenRules의 목록이며, 이 토큰을 사용하는 노드는 이 토큰을 사용하기 위해 하나의 allow 규칙과 일치해야 합니다.
enterprise_server_hoststringEnterpriseServerHost는 GitHub Enterprise Server 인스턴스와 연결된 러너에서 조인할 수 있도록 허용합니다. 비구성화될 경우, 토큰은 github.com에 대해 검증되지만, GHES 인스턴스의 호스트에 대해 구성되면 해당 호스트에 대해 검증됩니다. 이 값은 GHES 인스턴스의 호스트 이름이어야 하며, 스킴이나 경로를 포함하지 않아야 합니다. 해당 호스트 이름에서 HTTPS를 통해 접근할 수 있어야 하며, 인증서는 Auth Service에 의해 신뢰받아야 합니다.
enterprise_slugstringEnterpriseSlug는 GitHub Enterprise 조직의 슬러그를 OIDC 토큰의 예상 발급자에 포함할 수 있도록 허용합니다. 이는 GHE의 include_enterprise_slug 옵션과 호환성을 위한 것입니다. 이 기능이 활성화되면 이 필드는 귀하의 기업의 슬러그로 설정되어야 합니다. 활성화되지 않은 경우 이 필드는 비워 두어야 합니다. enterprise_server_host 가 지정된 경우 이 필드는 지정할 수 없습니다. 사용자 정의 발급자 값에 대한 추가 정보는 https://docs.github.com/en/enterprise-cloud@latest/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect#customizing-the-issuer-value-for-an-enterprise 를 참조하십시오.

spec.github.allow 항목

필드타입설명
actorstring
environmentstring
refstring
ref_typestring
repositorystring
repository_ownerstring
substring
workflowstring

spec.gitlab

필드유형설명
allow[]objectAllow는 TokenRules 목록이며, 이 토큰을 사용하는 노드는 이 토큰을 사용하기 위해 하나의 allow 규칙과 일치해야 합니다.
domainstringDomain은 귀하의 GitLab 인스턴스의 도메인입니다. 기본값은 gitlab.com 이며, 귀하의 자체 호스팅 GitLab 도메인(e.g., gitlab.example.com )으로 설정할 수 있습니다.

spec.gitlab.allow items

필드유형설명
ci_config_ref_uristring
ci_config_shastring
deployment_tierstring
environmentstring
environment_protectedboolean
namespace_pathstring
pipeline_sourcestring
project_pathstring
project_visibilitystring
refstring
ref_protectedboolean
ref_typestring
substring
user_emailstring
user_idstring
user_loginstring

spec.kubernetes

필드유형설명
allow[]objectAllow는 Rules 목록이며, 이 토큰을 사용하는 노드는 이 토큰을 사용하기 위해 하나의 allow 규칙과 일치해야 합니다.
static_jwksobjectStaticJWKS는 static_jwks 유형에 대한 특정 구성입니다.
typestringType은 Kubernetes Service Account 토큰을 검증하기 위해 어떤 동작을 사용할지 제어합니다. 지원 값: - in_cluster - static_jwks 설정되지 않은 경우 기본값은 in_cluster 입니다.

spec.kubernetes.allow items

필드유형설명
service_accountstring

spec.kubernetes.static_jwks

필드유형설명
jwksstring

spec.spacelift

필드유형설명
allow[]objectAllow는 Rules 목록이며, 이 토큰을 사용하는 노드는 이 토큰을 사용하기 위해 하나의 allow 규칙과 일치해야 합니다.
hostnamestringHostname은 토큰이 발생하는 Spacelift 테넌트의 호스트 이름입니다. 예: example.app.spacelift.io

spec.spacelift.allow items

필드유형설명
caller_idstring
caller_typestring
scopestring
space_idstring

spec.terraform_cloud

필드유형설명
allow[]objectAllow는 Rules 목록이며, 이 토큰을 사용하는 노드는 이 토큰을 사용하기 위해 하나의 allow 규칙과 일치해야 합니다.
audiencestringAudience는 Terraform Cloud의 TFCWORKLOAD_IDENTITY_AUDIENCE($TAG) 변수에서 구성된 JWT audience입니다. 설정되지 않은 경우 기본값은 Teleport 클러스터 이름입니다. 예를 들어, Terraform Cloud에서 TFC_WORKLOAD_IDENTITY_AUDIENCE_TELEPORT=foo 가 설정된 경우 이 값은 foo 이어야 합니다. 변수가 클러스터 이름과 일치하도록 설정된 경우, 여기에서 설정할 필요는 없습니다.
hostnamestringHostname은 이 토큰이 허용하는 JWT를 발행할 것으로 예상되는 Terraform Enterprise 인스턴스의 호스트 이름입니다. 이는 일반 Terraform Cloud 사용을 위해 설정되지 않을 수 있으며, 이 경우 기본값은 app.terraform.io 로 가정됩니다. 그렇지 않은 경우, 이는 JWT에 포함된 iss (발급자) 필드와 일치해야 하며, 표준 JWKS 엔드포인트를 제공해야 합니다.

spec.terraform_cloud.allow items

필드유형설명
organization_idstring
organization_namestring
project_idstring
project_namestring
run_phasestring
workspace_idstring
workspace_namestring

spec.tpm

필드유형설명
allow[]objectAllow는 규칙 목록으로, 제시된 위임된 ID가 조인 허용 규칙 중 하나와 일치해야 조인이 허용됩니다.
ekcert_allowed_cas[]stringEKCertAllowedCAs는 TPM EKCerts를 검증하는 데 사용될 CA 인증서 목록입니다. 지정된 경우, 조인하는 TPM은 지정된 CA 중 하나에 의해 서명된 EKCert를 제시해야 합니다. EKCert를 제시하지 않는 TPM은 조인이 허용되지 않습니다. 지정하지 않을 경우, TPM은 EKCert 또는 EKPubHash 중 하나로 조인이 허용됩니다.

spec.tpm.allow items

필드유형설명
descriptionstring
ek_certificate_serialstring
ek_public_hashstring
Teleport 원문 보기