Infograb logo
텔레포트_github_connector Terraform 리소스에 대한 참고자료

사용 예제

# Terraform Github 연결기

variable "github_secret" {}

resource "teleport_github_connector" "github" {
  # 이 섹션은 Terraform에게 GitHub 연결기 이전에 역할 예제를 생성해야 한다고 알려줍니다.
  depends_on = [
    teleport_role.example
  ]

  metadata = {
    name = "example"
    labels = {
      example = "yes"
    }
  }

  spec = {
    client_id     = "client"
    client_secret = var.github_secret

    teams_to_roles = [{
      organization = "gravitational"
      team         = "devs"
      roles        = ["example"]
    }]
  }
}

스키마

필수

  • spec (속성) Spec은 Github 연결기 사양입니다. (자세한 내용은 중첩 스키마 아래 참조)
  • version (문자열) Version은 리소스 버전입니다. 반드시 지정해야 합니다. 지원되는 값: v3.

선택 사항

  • metadata (속성) Metadata는 리소스 메타데이터를 포함합니다. (자세한 내용은 중첩 스키마 아래 참조)
  • sub_kind (문자열) SubKind는 일부 리소스에 사용되는 선택적 리소스 서브 종류입니다.

spec의 중첩 스키마

필수:

  • client_id (문자열) ClientID는 Github OAuth 앱 클라이언트 ID입니다.
  • client_secret (문자열, 민감 정보) ClientSecret는 Github OAuth 앱 클라이언트 비밀번호입니다.

선택 사항:

  • api_endpoint_url (문자열) APIEndpointURL은 이 연결기를 위한 Github 인스턴스의 API 엔드포인트 URL입니다.
  • client_redirect_settings (속성) ClientRedirectSettings는 표준 로컬호스트 이외의 비 브라우저 SSO 로그인을 위한 허용된 클라이언트 리디렉션 URL을 정의합니다. (자세한 내용은 중첩 스키마 아래 참조)
  • display (문자열) Display는 연결기 표시 이름입니다.
  • endpoint_url (문자열) EndpointURL은 이 연결기를 위한 GitHub 인스턴스의 URL입니다.
  • redirect_url (문자열) RedirectURL은 승인 콜백 URL입니다.
  • teams_to_logins (속성 목록) TeamsToLogins는 Github 팀 소속을 허용된 로그인/역할에 매핑합니다. DELETE IN 11.0.0 사용 중단: 대신 GithubTeamsToRoles를 사용하십시오. (자세한 내용은 중첩 스키마 아래 참조)
  • teams_to_roles (속성 목록) TeamsToRoles는 Github 팀 소속을 허용된 역할에 매핑합니다. (자세한 내용은 중첩 스키마 아래 참조)

spec.client_redirect_settings의 중첩 스키마

선택 사항:

  • allowed_https_hostnames (문자열 목록) https 클라이언트 리디렉션 URL에 허용된 호스트 이름 목록
  • insecure_allowed_cidr_ranges (문자열 목록) HTTP 또는 HTTPS 클라이언트 리디렉션 URL에 허용된 CIDR 목록

spec.teams_to_logins의 중첩 스키마

선택 사항:

  • kubernetes_groups (문자열 목록) KubeGroups는 이 조직/팀에 대한 허용된 Kubernetes 그룹 목록입니다.
  • kubernetes_users (문자열 목록) KubeUsers는 이 조직/팀을 위조할 수 있는 허용된 Kubernetes 사용자 목록입니다.
  • logins (문자열 목록) Logins는 이 조직/팀에 대한 허용된 로그인 목록입니다.
  • organization (문자열) Organization은 사용자가 속한 Github 조직입니다.
  • team (문자열) Team은 사용자가 속한 조직 내의 팀입니다.

spec.teams_to_roles의 중첩 스키마

선택 사항:

  • organization (문자열) Organization은 사용자가 속한 Github 조직입니다.
  • roles (문자열 목록) Roles는 이 조직/팀에 대한 허용된 로그인 목록입니다.
  • team (문자열) Team은 사용자가 속한 조직 내의 팀입니다.

metadata의 중첩 스키마

필수:

  • name (문자열) Name은 객체 이름입니다.

선택 사항:

  • description (문자열) Description은 객체 설명입니다.
  • expires (문자열) Expires는 시스템의 모든 리소스에 설정할 수 있는 전역 만료 시간 헤더입니다.
  • labels (문자열 맵) Labels는 레이블 세트입니다.
Teleport 원문 보기