Infograb logo
역할 접근 요청

텔레포트의 Just-in-time 접근 요청을 통해 사용자는 권한을 상승시키기 위해 추가 역할에 대한 접근을 요청할 수 있습니다. 요청은 ChatOps를 통해 또는 유연한 권한 부여 워크플로우 API를 통해 다른 곳에서도 에스컬레이션할 수 있습니다.

필수 조건

  • 실행 중인 Teleport 클러스터. Teleport를 시작하려면 가입하기 무료 체험판을 이용해 보세요.

  • tctl 관리 도구 및 tsh 클라이언트 도구 버전 >= 16.2.0.

    tctltsh 다운로드 방법에 대한 지침은 설치를 방문하세요.

  • 당신의 Teleport 클러스터에 연결할 수 있는지 확인하려면, tsh login으로 로그인한 다음 현재 자격 증명을 사용하여 tctl 명령어를 실행할 수 있는지 확인하십시오. 예를 들어:
    tsh login --proxy=teleport.example.com --user=email@example.com
    tctl status

    클러스터 teleport.example.com

    버전 16.2.0

    CA 핀 sha256:abdc1245efgh5678abdc1245efgh5678abdc1245efgh5678abdc1245efgh5678

    클러스터에 연결하고 tctl status 명령어를 실행할 수 있다면, 현재 자격 증명을 사용하여 작업대에서 후속 tctl 명령어를 실행할 수 있습니다. 자신의 Teleport 클러스터를 호스팅하는 경우, Teleport 인증 서비스를 호스팅하는 컴퓨터에서 전체 권한으로 tctl 명령어를 실행할 수도 있습니다.

RBAC 설정

이 예제에서는 세 가지 역할을 정의합니다:

  • contractor: 이 역할을 가진 사용자는 dba 역할에 대한 향상된 접근을 요청할 수 있습니다.
  • dba: 이 역할은 데이터베이스에 대한 접근을 허용합니다.
  • approver: 이 역할을 가진 사용자는 dba 역할에 대한 접근 요청을 승인할 수 있습니다.

계약자 역할

이 역할을 가진 사용자는 dba 역할에 대한 접근을 요청할 수 있습니다.

kind: 역할
version: v5
metadata:
  name: contractor
spec:
  allow:
    request:
      roles: ['dba']

DBA 역할

이 역할은 데이터베이스에 대한 접근을 허용합니다.

kind: 역할
version: v5
metadata:
  name: dba
spec:
  allow:
    db_labels:
      '*': '*'
  options:
    # 계약자가 요청 시점부터 1시간 동안만 이 역할을 사용할 수 있도록 허용합니다.
    max_session_ttl: 1h

승인자 역할

이 역할은 사용자가 dba 역할에 대한 요청을 승인할 수 있도록 허용합니다.

kind: 역할
version: v5
metadata:
  name: approver
spec:
  allow:
    # `review_requests`는 나열된 역할을 승인할 수 있도록 허용합니다.
    review_requests:
      roles:
      - 'dba'
텔레포트 엔터프라이즈가 필요합니다

review_requests 규칙이 포함된 역할은 텔레포트 엔터프라이즈에서만 사용할 수 있습니다. 텔레포트 커뮤니티 에디션에서는 액세스 요청이 관리자가 Auth Server에서 tctl을 실행하여 승인해야 합니다.

접근 요청

텔레포트 엔터프라이즈는 역할에 대한 요청을 위한 동일한 CLI 기반 워크플로를 지원하지만, 대부분의 사용자는 웹 UI를 통해 접근 요청을 하는 것을 선호합니다.

하나 이상의 역할에 대한 접근을 요청하려면, 접근 요청 페이지로 이동합니다. 이 페이지를 찾으려면 사이드 바에서 리소스를 선택하고, 접근 요청 메뉴를 확장한 다음 새 요청을 선택합니다.

여기서 드롭다운을 사용하여 역할이나 특정 리소스에 대한 접근을 요청할 수 있습니다. 이 드롭다운에서 역할을 선택하면 요청할 수 있는 역할 목록이 표시됩니다.

대기 중인 요청에 역할을 포함하려면 요청에 추가를 클릭합니다.

참고: 접근 요청은 역할이나 특정 리소스 집합을 포함해야 합니다. 두 가지를 혼합할 수 없습니다. 특정 리소스에 대한 접근 요청 방법에 대한 자세한 내용은 리소스 접근 요청 가이드를 참조하십시오.

원하는 역할이 모두 추가되면 요청 진행을 클릭하여 요청을 검토하고 제출하십시오.

웹 UI를 통한 접근 요청 검토

검토자는 웹 UI에서 관리 > 접근 요청 > 요청 검토로 이동하여 열려 있는 요청 목록을 볼 수 있습니다.

Warning

다른 역할을 편집할 수 있는 역할에 대한 접근을 부여하면 사용자가 영구적으로 자신의 권한을 상승시키는 것을 허용할 수 있습니다. 요청을 검토할 때는 요청되는 역할과 요청이 승인될 경우 사용자에게 적용될 권한을 신중하게 고려하는 것이 중요합니다.

tsh를 통한 접근 요청 검토

적절한 권한이 있는 텔레포트 엔터프라이즈 사용자는 tsh 명령줄로 요청을 승인할 수도 있습니다:

tsh request review --approve <request-id>

승인된 접근 요청 사용하기

요청이 승인되고 요청자는 명령줄 및 웹 UI 워크플로 모두에서 접근을 상승시킬 수 있습니다.

명령줄에서 사용할 때, 요청자는 승인된 요청 ID를 사용하여 로그인해야 합니다:

승인된 접근 요청으로 로그인

tsh login --request-id=bc8ca931-fec9-4b15-9a6f-20c13c5641a9

웹 UI에서 요청자는 요청 검토 페이지에서 자신의 요청을 열고 역할 가정을 클릭하여 추가 역할에 대한 접근을 얻을 수 있습니다. 참고: 역할 기반 접근 요청은 추가적입니다. 사용자는 요청에 의해 부여된 역할 외에도 기본 역할 세트에 접근할 수 있습니다.

승인된 접근 요청이 활성화된 동안 페이지 상단에 배너가 표시됩니다. 더 이상 상승된 접근이 필요하지 않을 경우 원래 역할로 전환을 클릭하여 원래의 역할 세트로 되돌릴 수 있습니다.

다음 단계

SSH 자동 접근 요청

역할 접근 요청을 구성한 후, tsh ssh는 접근이 거부될 때 역할 접근 요청을 자동으로 생성할 수 있으며, tsh request searchtsh request create 단계를 건너뛸 수 있습니다. 대상 노드에 접근할 수 있는 여러 역할이 있는 경우 요청할 역할을 선택하라는 메시지가 표시됩니다.

tsh ssh --request-mode role alice@iot
ERROR: access denied to alice connecting to iot on cluster teleport.example.com
현재 alice@iot에 대한 접근 권한이 없으며, 접근 요청을 시도합니다.
요청할 역할 선택 [node-access, node-access-alt]: node-access요청 사유 입력: please요청 생성 중...
요청 승인 대기 중...
승인 받음, 사유="okay"업데이트된 인증서 받기...
iot:~ alice$

이와 같은 방식으로 역할 접근 요청을 생성하려면, 요청하는 역할에 search_as_role이 설정되어 있어야 하며, 접속하려는 노드를 읽을 수 있어야 합니다.

# requester.yaml
kind: 역할
version: v5
metadata:
  name: requester
spec:
  allow:
    request:
      roles:
        - node-access
      search_as_roles:
        # 역할과 일치할 필요는 없으며, 
        # ssh 접속하려는 노드에 접근할 수 있어야 합니다.
        - access

외부 도구 통합

텔레포트의 접근 요청 플러그인을 사용하면 사용자가 조직의 기존 메시징 및 프로젝트 관리 솔루션 내에서 접근 요청을 관리할 수 있습니다.

통합유형설정 지침
Slack메시징Slack 설정하기
Mattermost메시징Mattermost 설정하기
Microsoft Teams메시징Microsoft Teams 설정하기
Jira프로젝트 보드Jira 설정하기
PagerDuty일정PagerDuty 설정하기
이메일메시징이메일 설정하기
Discord메시징Discord 설정하기
OpsGenie사고 관리OpsGenie 설정하기
ServiceNow워크플로우ServiceNow 설정하기

접근 요청 구성 방법 배우기

자세한 설명은 접근 요청 구성 가이드를 참조하십시오. 조직의 즉시 접근 요청 워크플로를 설정하는 데 사용할 수 있는 모든 옵션을 설명합니다.

접근 목록 설정

접근 목록을 사용하면 고정된 기간 동안 사용자 그룹에 권한을 부여할 수 있습니다. 접근 목록에 대한 자세한 내용은 문서를 참조하십시오.

Teleport 원문 보기