teleport_database Terraform 리소스 레퍼런스
요약
이 페이지는 Teleport Terraform 프로바이더의 teleport_database 리소스에서 지원되는 값을 설명합니다.
이 페이지는 Teleport Terraform 프로바이더의 teleport_database 리소스에서 지원되는 값을 설명합니다. 데이터베이스 서비스 배포를 완료하고 데이터베이스 리소스에 접근하려면 데이터베이스 동적 등록 가이드를 따르세요.
사용 예시#
# Teleport Database
resource "teleport_database" "example" {
version = "v3"
metadata = {
name = "example"
description = "Test database"
labels = {
"teleport.dev/origin" = "dynamic" // This label is added on Teleport side by default
}
}
spec = {
protocol = "postgres"
uri = "localhost"
}
}
스키마#
필수#
version(String) 리소스 버전입니다. 반드시 지정해야 합니다. 지원되는 값:v3.
선택#
metadata(Attributes) 데이터베이스 메타데이터입니다. (중첩 스키마: metadata 참조)spec(Attributes) 데이터베이스 스펙입니다. (중첩 스키마: spec 참조)sub_kind(String) 선택적 리소스 서브카인드입니다.
metadata의 중첩 스키마#
필수:
name(String) 객체 이름입니다.
선택:
description(String) 객체 설명입니다.expires(String) 시스템의 모든 리소스에 설정할 수 있는 전역 만료 시간 헤더입니다.labels(Map of String) 레이블 집합입니다.
spec의 중첩 스키마#
필수:
protocol(String) 데이터베이스 프로토콜입니다: postgres, mysql, mongodb 등.uri(String) 데이터베이스 연결 엔드포인트입니다.
선택:
ad(Attributes) 데이터베이스에 대한 Active Directory 구성입니다. (중첩 스키마: spec.ad 참조)admin_user(Attributes) 자동 사용자 프로비저닝을 위한 데이터베이스 관리자 사용자입니다. (중첩 스키마: spec.admin_user 참조)aws(Attributes) RDS/Aurora/Redshift 데이터베이스에 대한 AWS 특정 설정입니다. (중첩 스키마: spec.aws 참조)azure(Attributes) Azure 특정 데이터베이스 메타데이터입니다. (중첩 스키마: spec.azure 참조)ca_cert(String) PEM으로 인코딩된 데이터베이스 CA 인증서입니다. 더 이상 사용되지 않음: TLS.CACert으로 이동됨. 10.0에서 삭제 예정.dynamic_labels(Attributes Map) 데이터베이스 동적 레이블입니다. (중첩 스키마: spec.dynamic_labels 참조)gcp(Attributes) GCP Cloud SQL 데이터베이스에 특정한 파라미터입니다. (중첩 스키마: spec.gcp 참조)mongo_atlas(Attributes) 데이터베이스에 대한 Atlas 메타데이터입니다. (중첩 스키마: spec.mongo_atlas 참조)mysql(Attributes) MySQL 데이터베이스 옵션에 대한 추가 섹션입니다. (중첩 스키마: spec.mysql 참조)oracle(Attributes) 추가 Oracle 구성 옵션입니다. (중첩 스키마: spec.oracle 참조)tls(Attributes) 대상 데이터베이스에 연결 시 사용하는 TLS 구성입니다. 사용자 지정 CA 인증서를 제공하거나 서버 이름을 재정의할 수 있습니다. (중첩 스키마: spec.tls 참조)
spec.ad의 중첩 스키마#
선택:
domain(String) 데이터베이스가 속한 Active Directory 도메인입니다.kdc_host_name(String) x509 인증을 위한 KDC의 호스트 이름입니다.keytab_file(String) Kerberos 키탭 파일 경로입니다.krb5_file(String) Kerberos 구성 파일 경로입니다. 기본값은 /etc/krb5.conf입니다.ldap_cert(String) Windows LDAP/AD의 인증서로, 선택 사항입니다. x509 인증에만 사용됩니다.ldap_service_account_name(String) LDAP 쿼리 수행을 위한 서비스 계정 이름입니다. x509 인증/PKINIT에 필요합니다.ldap_service_account_sid(String) LDAP 쿼리 수행을 위한 서비스 계정 SID입니다. x509 인증/PKINIT에 필요합니다.spn(String) 데이터베이스의 서비스 주체 이름입니다.
spec.admin_user의 중첩 스키마#
선택:
default_database(String) 권한 있는 데이터베이스 사용자가 기본적으로 로그인하는 데이터베이스입니다. 데이터베이스 유형에 따라 이 데이터베이스는 데이터베이스 사용자 관리를 위한 절차나 데이터를 저장하는 데 사용될 수 있습니다.name(String) 권한 있는 데이터베이스 사용자의 사용자 이름입니다.
spec.aws의 중첩 스키마#
선택:
account_id(String) 이 데이터베이스가 속한 AWS 계정 ID입니다.assume_role_arn(String) 데이터베이스에 접근할 때 취득할 선택적 AWS 역할 ARN입니다. AWS 계정 간 접근을 활성화하려면 이 필드와 ExternalID를 설정하세요.docdb(Attributes) Amazon DocumentDB 특정 메타데이터입니다. (중첩 스키마: spec.aws.docdb 참조)elasticache(Attributes) Amazon ElastiCache Redis 특정 메타데이터입니다. (중첩 스키마: spec.aws.elasticache 참조)elasticache_serverless(Attributes) Amazon ElastiCache Serverless 메타데이터입니다. (중첩 스키마: spec.aws.elasticache_serverless 참조)external_id(String) AWS 계정 간 역할 취득을 활성화하는 데 사용되는 선택적 AWS 외부 ID입니다.iam_policy_status(Number) 데이터베이스 접근을 위해 IAM 정책이 올바르게 구성되어 있는지 나타냅니다. 그렇지 않은 경우, 사용자는 데이터베이스에 대한 접근을 허용하기 위해 AWS 프로파일 자격 증명을 업데이트해야 합니다. 예를 들어 RDS 데이터베이스의 경우: 기본 AWS 프로파일이 해당 데이터베이스에 대해rds-db:connect를 허용해야 합니다.memorydb(Attributes) AWS MemoryDB 특정 메타데이터입니다. (중첩 스키마: spec.aws.memorydb 참조)opensearch(Attributes) AWS OpenSearch 특정 메타데이터입니다. (중첩 스키마: spec.aws.opensearch 참조)rds(Attributes) RDS 특정 메타데이터입니다. (중첩 스키마: spec.aws.rds 참조)rdsproxy(Attributes) AWS Proxy 특정 메타데이터입니다. (중첩 스키마: spec.aws.rdsproxy 참조)redshift(Attributes) Redshift 특정 메타데이터입니다. (중첩 스키마: spec.aws.redshift 참조)redshift_serverless(Attributes) Amazon Redshift Serverless에 특정한 메타데이터입니다. (중첩 스키마: spec.aws.redshift_serverless 참조)region(String) AWS 클라우드 리전입니다.secret_store(Attributes) 시크릿 저장소 구성입니다. (중첩 스키마: spec.aws.secret_store 참조)session_tags(Map of String) AWS STS 세션 태그 목록입니다.
spec.aws.docdb의 중첩 스키마#
선택:
cluster_id(String) 클러스터 식별자입니다.endpoint_type(String) 엔드포인트의 유형입니다.instance_id(String) 인스턴스 식별자입니다.
spec.aws.elasticache의 중첩 스키마#
선택:
endpoint_type(String) 엔드포인트의 유형입니다.replication_group_id(String) Redis 복제 그룹 ID입니다.transit_encryption_enabled(Boolean) 전송 중 암호화(TLS)가 활성화되었는지 나타냅니다.user_group_ids(List of String) 사용자 그룹 ID 목록입니다.
spec.aws.elasticache_serverless의 중첩 스키마#
선택:
cache_name(String) ElastiCache Serverless 캐시 이름입니다.
spec.aws.memorydb의 중첩 스키마#
선택:
acl_name(String) 클러스터와 연결된 ACL 이름입니다.cluster_name(String) MemoryDB 클러스터 이름입니다.endpoint_type(String) 엔드포인트의 유형입니다.tls_enabled(Boolean) 전송 중 암호화(TLS)가 활성화되었는지 나타냅니다.
spec.aws.opensearch의 중첩 스키마#
선택:
domain_id(String) 도메인 ID입니다.domain_name(String) 도메인 이름입니다.endpoint_type(String) 엔드포인트의 유형입니다.
spec.aws.rds의 중첩 스키마#
선택:
cluster_id(String) RDS 클러스터(Aurora) 식별자입니다.iam_auth(Boolean) 데이터베이스 IAM 인증이 활성화되었는지 나타냅니다.instance_id(String) RDS 인스턴스 식별자입니다.resource_id(String) RDS 인스턴스 리소스 식별자(db-xxx)입니다.security_groups(List of String) RDS 인스턴스에 연결된 보안 그룹 목록입니다.subnets(List of String) RDS 인스턴스의 서브넷 목록입니다.vpc_id(String) RDS가 실행 중인 VPC입니다.
spec.aws.rdsproxy의 중첩 스키마#
선택:
custom_endpoint_name(String) RDS Proxy 사용자 지정 엔드포인트의 식별자입니다.name(String) RDS Proxy의 식별자입니다.resource_id(String) RDS 인스턴스 리소스 식별자(prx-xxx)입니다.
spec.aws.redshift의 중첩 스키마#
선택:
cluster_id(String) Redshift 클러스터 식별자입니다.
spec.aws.redshift_serverless의 중첩 스키마#
선택:
endpoint_name(String) VPC 엔드포인트 이름입니다.workgroup_id(String) 워크그룹 ID입니다.workgroup_name(String) 워크그룹 이름입니다.
spec.aws.secret_store의 중첩 스키마#
선택:
key_prefix(String) 시크릿 키 접두사를 지정합니다.kms_key_id(String) 암호화를 위한 AWS KMS 키를 지정합니다.
spec.azure의 중첩 스키마#
선택:
is_flexi_server(Boolean) 데이터베이스가 Azure Flexible 서버인 경우 true입니다.name(String) Azure 데이터베이스 서버 이름입니다.redis(Attributes) Azure Cache for Redis 특정 데이터베이스 메타데이터입니다. (중첩 스키마: spec.azure.redis 참조)resource_id(String) 리소스에 대한 Azure 전체 정규화된 ID입니다.
spec.azure.redis의 중첩 스키마#
선택:
clustering_policy(String) Redis Enterprise의 클러스터링 정책입니다.
spec.dynamic_labels의 중첩 스키마#
선택:
command(List of String) 실행할 명령입니다.period(String) 명령 실행 사이의 시간입니다.result(String) 표준 출력을 캡처합니다.
spec.gcp의 중첩 스키마#
선택:
alloydb(Attributes) AlloyDB 특정 구성 요소입니다. (중첩 스키마: spec.gcp.alloydb 참조)instance_id(String) Cloud SQL 인스턴스 ID입니다.project_id(String) Cloud SQL 인스턴스가 속한 GCP 프로젝트 ID입니다.
spec.gcp.alloydb의 중첩 스키마#
선택:
endpoint_override(String) 사용할 엔드포인트 주소의 재정의입니다.endpoint_type(String) 사용할 데이터베이스 엔드포인트 유형입니다. "private", "public", "psc" 중 하나여야 합니다.
spec.mongo_atlas의 중첩 스키마#
선택:
name(String) Atlas 데이터베이스 인스턴스 이름입니다.
spec.mysql의 중첩 스키마#
선택:
server_version(String) 런타임 정보를 사용할 수 없는 경우 DB 프록시가 보고하는 서버 버전입니다.
spec.oracle의 중첩 스키마#
선택:
audit_user(String) 내부 감사 추적에 접근하는 데 사용해야 하는 Oracle 데이터베이스 사용자 이름입니다.retry_count(Number) 실패 시 호스트에 연결을 재시도할 최대 횟수입니다. 지정하지 않으면 기본값은 2이며, 총 3번의 연결 시도가 이루어집니다.shuffle_hostnames(Boolean) true로 설정하면 제공된 목록에서 연결할 호스트 순서를 무작위로 섞습니다.
spec.tls의 중첩 스키마#
선택:
ca_cert(String) 데이터베이스 TLS 연결 검증에 사용되는 선택적 사용자 제공 CA 인증서입니다.mode(Number) TLS 연결 모드입니다. 0은 "verify-full", 1은 "verify-ca", 2는 "insecure"입니다.server_name(String) 사용자 지정 호스트 이름을 제공할 수 있습니다. 이 값은 유효성 검사 중 인증서의 서버 이름/호스트 이름을 재정의합니다.trust_system_cert_pool(Boolean) Teleport가 호스트 시스템에서 사용 가능한 인증 기관을 신뢰할 수 있도록 합니다. 기본적으로 설정되지 않은 경우, Teleport는 Teleport의 데이터베이스 서버 CA 또는 이 TLS 설정에서 지정된 ca_cert로 서명된 TLS 인증서가 있는 자체 서명된 데이터베이스만 신뢰합니다. 클라우드 호스팅 데이터베이스의 경우, Teleport는 유효성 검사에 필요한 해당 CA를 다운로드합니다.
