Infograb logo
Teleport 정책으로 Entra ID 정책 분석

Teleport Identity의 Microsoft Entra ID 통합은 Entra ID 디렉터리를 Teleport 클러스터로 동기화하고, Entra ID 디렉터리 내의 관계에 대한 통찰력을 제공합니다. 또한, Entra ID가 SSO ID 공급자로 사용될 때 Teleport Policy는 서비스 전반에 걸친 SSO 부여를 시각화합니다.

SSO 부여 분석은 현재 Entra ID가 ID 공급자로 작동하는 상황에서만 지원되며, AWS 계정은 AWS IAM 역할 페더레이션을 사용하여 의존 당사자로 설정되어야 합니다.

추가 의존 당사자에 대한 지원은 향후 추가될 예정입니다.

작동 방식

Teleport는 연결된 Entra ID 디렉터리를 지속적으로 스캔합니다. 5분 간격으로, Teleport는 Entra ID 디렉터리에서 다음 자원을 검색합니다:

  • 사용자
  • 그룹
  • 그룹에 대한 사용자의 멤버십
  • 엔터프라이즈 애플리케이션

Entra ID 사용자와 그룹은 각각 Teleport의 사용자 및 액세스 목록으로 가져옵니다. 필요한 모든 자원이 가져와지면, Teleport는 이를 액세스 그래프로 푸시하여 최신 정보로 유지되도록 합니다. 이 자원들은 이후 Teleport 정책 사용 페이지에서 설명된 그래프 표현 방식을 사용하여 시각화됩니다.

전제 조건

  • 실행 중인 Teleport Enterprise 클러스터 v15.4.2/v16.0.0 이상.
  • 계정에 대해 Teleport Identity 및 Teleport Policy가 활성화되어야 함.
  • 자가 호스팅 클러스터의 경우:
    • Auth Service 구성에서 최신 license.pem 이 사용되고 있는지 확인하십시오.
    • 실행 중인 Access Graph 노드 v1.21.3 이상. 자세한 내용은 Teleport 정책 페이지에서 Access Graph 설정 방법을 확인하십시오.
    • Access Graph 서비스가 실행 중인 노드는 Teleport Auth Service에서 접근 가능해야 함.
  • 사용자는 Azure 계정에서 특권 관리자 권한을 가져야 함.
  • OIDC 설정의 경우, Teleport 클러스터는 인터넷에서 공개적으로 접근 가능해야 함.
  • 공기 차단 클러스터의 경우, tctl 은 v16.4.7 이상이어야 함.

클러스터에 대한 Access Graph가 올바르게 설정되었는지 확인하려면 Teleport Web UI에 로그인하고 관리 탭으로 이동하십시오. 이 활성화되면, 권한 관리 섹션에 Access Graph 메뉴 항목이 표시됩니다.

1/3단계. 설정 방법 선택

온보딩을 시작하려면 선호하는 설정 방법을 선택하십시오. Teleport는 클러스터 구성과 사용자 요구 사항에 따라 다양한 방법을 제공합니다.

Entra ID용 OIDC 제공자로서의 Teleport에 의한 자동 설정

이 방법은 권장되며 Teleport Enterprise(클라우드) 고객인 경우 필요합니다.

이 방법은 공개적으로 접근 가능하며 Auth Service 노드 또는 포드에 Azure 자격 증명이 없는 Teleport 클러스터에 적합합니다.

이 설정에서 Teleport는 OpenID Connect (OIDC) ID 공급자로 구성되어 설정 중에 생성된 Entra ID 애플리케이션과 신뢰할 수 있는 연결을 구축합니다. 이 신뢰는 Teleport가 Entra ID 애플리케이션을 사용하여 인증할 수 있도록 하여, 추가 자격 증명이나 관리되는 ID 없이 연결된 권한에 접근할 수 있게 합니다.

요구 사항:

  • Azure가 Teleport에서 발급한 OIDC 토큰을 검증할 수 있도록 Teleport와 Azure 간의 직접 양방향 연결이 필요합니다.

Entra ID 인증을 위한 시스템 자격 증명을 통한 자동 설정

공개적으로 접근할 수 없는 공기 차단 Teleport 클러스터를 위해 설계된 이 설정은 Azure가 Teleport에서 발급한 OIDC 토큰을 검증할 수 없는 환경에 적합합니다.

대신, Teleport는 Teleport Auth Service가 실행 중인 VM에서 사용 가능한 Azure 자격 증명에 의존합니다. 이 자격 증명은 다음의 Entra ID 권한을 가져야 합니다:

  • Application.Read.All
  • Directory.Read.All
  • Policy.Read.All

요구 사항:

  • Teleport에서 Azure 인프라로의 단방향 연결.

수동 설정

이 설정은 Entra ID 애플리케이션을 설정하기 위해 자동화된 스크립트에 의존하지 않고 Entra ID 통합을 수동으로 구성하는 방법을 설명합니다.

이 가이드는 Teleport를 OIDC 공급자로 사용한 자동 설정시스템 자격 증명을 이용한 자동 설정 설정을 다루지만, Teleport Policy 통합을 활성화할 수 없다는 제한이 있습니다.

2/3단계. Entra ID 통합 구성

통합 온보딩 시작

온보딩 프로세스를 시작하려면, Teleport 웹 UI에 접근하여 "Access Management" 탭으로 이동한 후 "Enroll New Integration"을 선택하고 "Microsoft Entra ID"를 선택합니다.

온보딩 마법사에서 Entra 그룹을 위해 생성될 Access Lists의 기본 소유자로 지정할 Teleport 사용자를 선택하고 "Next"를 클릭합니다.

Entra ID 통합 온보딩의 첫 번째
단계

Azure에서 권한 부여 및 온보딩 완료

이제 마법사는 Azure에 필요한 권한을 설정할 스크립트를 제공합니다.

Entra ID 통합 온보딩의 두 번째
단계

Azure Cloud Shell을 열려면 shell.azure.com으로 이동하거나 Azure Portal에서 Cloud Shell 아이콘을 클릭합니다.

Azure Portal에서 Cloud Shell 버튼의
위치

Bash 버전의 Cloud Shell을 사용해야 합니다. Cloud Shell 인스턴스가 열리면 생성된 명령을 붙여넣습니다. 이 명령은 당신의 Teleport 클러스터를 Entra ID 디렉터리에 기업 애플리케이션으로 설정하고, Teleport가 디렉터리의 데이터(사용자 및 그룹 등)를 읽을 수 있는 읽기 전용 권한을 부여합니다.

스크립트가 필요한 권한 설정을 완료하면, 통합 온보딩 완료에 필요한 데이터를 출력합니다.

Teleport 웹 UI로 돌아가서 필요한 데이터를 입력하고 "Finish"를 클릭합니다.

필수 필드가 채워진 Entra ID 통합 온보딩의 두 번째
단계

Auth 서비스 VM의 Azure ID에 권한 할당

Azure Identity를 필요한 권한으로 설정하려면:

  • Application.Read.All
  • Directory.Read.All
  • Policy.Read.All

Azure 대시보드로 이동하여 Teleport Auth 서비스 VM에 연결된 ID를 찾고, Object (principal) ID 를 복사합니다. 이 값을 Principal ID 에 붙여넣습니다.

주요 ID를 얻은 후, PowerShell 모드에서 Azure Cloud Shell을 열고 다음 스크립트를 실행하여 Principal ID 에 필요한 권한을 할당합니다.


# 디렉터리 및 앱 역할 할당 권한에 필요한 범위를 사용하여 Microsoft Graph에 연결합니다.
Connect-MgGraph -Scopes 'Directory.ReadWrite.All', 'AppRoleAssignment.ReadWrite.All'

# 고유한 주요 ID(UUID)를 사용하여 관리 ID의 서비스 주체 객체를 검색합니다.
$managedIdentity = Get-MgServicePrincipal -ServicePrincipalId 'Principal ID'

# Microsoft Graph의 엔터프라이즈 애플리케이션 개체를 설정합니다.
# 이는 Azure AD에서 특정 앱 ID를 가진 Microsoft Graph의 서비스 주체 객체입니다.
$graphSPN = Get-MgServicePrincipal -Filter "AppId eq '00000003-0000-0000-c000-000000000000'"

# 관리 ID에 할당할 권한 범위를 정의합니다.
# 이는 관리 ID에 필요한 Microsoft Graph API 권한입니다.
$permissions = @(
  "Application.Read.All"   # 디렉터리의 애플리케이션을 읽을 수 있는 권한
  "Directory.Read.All"     # 디렉터리 데이터를 읽을 수 있는 권한
  "Policy.Read.All"        # 디렉터리 내 정책을 읽을 수 있는 권한
)

# 정의된 권한과 일치하는 Microsoft Graph 서비스 주체의 앱 역할을 필터링하여 찾습니다.
# "AllowedMemberTypes"에 "Application"이 포함된 역할만 포함합니다(관리 ID에 적합).
$appRoles = $graphSPN.AppRoles |
    Where-Object Value -in $permissions |
    Where-Object AllowedMemberTypes -contains "Application"

# 각 앱 역할을 반복하여 관리 ID에 할당합니다.
foreach ($appRole in $appRoles) {
    # 역할 할당을 위한 매개변수를 정의합니다. 여기에는 관리 ID의 주요 ID,
    # Microsoft Graph 서비스 주체의 리소스 ID, 할당되는 특정 앱 역할 ID가 포함됩니다.
    $bodyParam = @{
        PrincipalId = $managedIdentity.Id  # 관리 ID의 ID(서비스 주체)
        ResourceId  = $graphSPN.Id         # Microsoft Graph 서비스 주체의 ID
        AppRoleId   = $appRole.Id          # 할당되는 앱 역할의 ID
    }

    # 관리 ID에 대한 새 앱 역할 할당을 생성하여 지정된 권한을 부여합니다.
    New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $managedIdentity.Id -BodyParameter $bodyParam
}

이제 귀하의 ID 주요 Principal ID 는 애플리케이션, 디렉터리 및 정책을 나열하는 데 필요한 권한을 갖추게 되었습니다.

Entra ID 및 Teleport 리소스 설정

Teleport tctl 명령은 공기 차단 클러스터에 대한 Entra ID 통합을 설정하고 구성하기 위한 대화형 가이드를 제공합니다.

이를 사용하려면 tctl 버전 v16.4.7 이상이 필요하며 기본 액세스 목록 소유자의 목록을 선택해야 합니다.
지정된 Teleport 사용자는 Entra ID 통합에 의해 가져온 액세스 목록의 소유자가 됩니다.
Access List Owner 는 기존의 Teleport 사용자여야 합니다.
여러 액세스 목록 소유자를 선호하는 경우, 각 사용자와 함께 플래그를 반복하여 사용하십시오. 예: --default-owner=owner1 --default-owner=owner2 .

또한 Teleport Auth Service 주소를 example.teleport.sh:443 로 제공해야 합니다.
다중화 모드로 실행 중인 클러스터의 경우, 이 주소는 프록시 주소와 동일합니다.

Teleport 라이선스에 Teleport Policy가 포함되지 않은 경우, --no-access-graph 플래그를 포함하십시오.

Teleport Policy가 라이선스에 포함된 경우 --no-access-graph 플래그를 사용하여 액세스 그래프 통합을 비활성화합니다.

tctl plugins install entraid \ --default-owner=Access List Owner \ --default-owner=someOtherOwner@teleport.sh \ --use-system-credentials \ --auth-server example.teleport.sh:443

tctl plugins install entraid 가이드에서 제공하는 자세한 지침을 따라 Entra ID 플러그인을 설치하고 구성하십시오.
이 가이드는 Teleport 환경 내에서 Entra ID 통합을 활성화하는 데 필요한 각 단계를 안내합니다.
tctl plugins install entraid 가이드를 면밀히 따르시어 설치 및 구성을 완료하십시오.

Auth Service VM의 Azure ID에 권한 부여

이 단계에서는 Auth Service 머신의 Azure ID에 필요한 Entra ID 권한을 설정합니다.

시스템에서 사용 가능한 자격 증명을 사용하여 Teleport를 Entra ID와 인증하려는 경우에만 이 단계를 따르십시오. Entra ID에 대해 OIDC 공급자로 Teleport를 사용하려는 경우 이 단계를 건너뛸 수 있습니다.

  • Application.Read.All
  • Directory.Read.All
  • Policy.Read.All

Azure 대시보드로 이동하여 Teleport Auth Service VM에 연결된 ID를 찾고,
Object (principal) ID 를 복사하여 Principal ID 에 붙여넣습니다.

Principal ID를 얻은 후 PowerShell 모드에서 Azure Cloud Shell을 열고
다음 스크립트를 실행하여 Principal ID 에 필요한 권한을 부여합니다.


# 디렉터리 및 앱 역할 할당 권한에 대한 필요한 범위로 Microsoft Graph에 연결합니다.
Connect-MgGraph -Scopes 'Directory.ReadWrite.All', 'AppRoleAssignment.ReadWrite.All'

# 고유한 주체 ID(UUID)를 사용하여 관리형 ID의 서비스 주체 개체를 검색합니다.
$managedIdentity = Get-MgServicePrincipal -ServicePrincipalId 'Principal ID'

# Microsoft Graph의 엔터프라이즈 애플리케이션 개체를 설정합니다.
# 이는 특정 앱 ID를 가진 Azure AD에서 Microsoft Graph를 나타내는 서비스 주체 개체입니다.
$graphSPN = Get-MgServicePrincipal -Filter "AppId eq '00000003-0000-0000-c000-000000000000'"

# 관리형 ID에 할당할 권한 범위를 정의합니다.
# 여기에는 관리형 ID에서 요구하는 Microsoft Graph API 권한이 포함됩니다.
$permissions = @(
  "Application.Read.All"   # 디렉터리의 애플리케이션을 읽을 수 있는 권한
  "Directory.Read.All"     # 디렉터리 데이터를 읽을 수 있는 권한
  "Policy.Read.All"        # 디렉터리 내 정책을 읽을 수 있는 권한
)

# 정의된 권한에 맞는 Microsoft Graph 서비스 주체의 앱 역할을 필터링하고 찾습니다.
# "AllowedMemberTypes"에 "Application"이 포함된 역할만 포함합니다(관리형 ID에 적합).
$appRoles = $graphSPN.AppRoles |
    Where-Object Value -in $permissions |
    Where-Object AllowedMemberTypes -contains "Application"

# 각 앱 역할을 반복하여 관리형 ID에 할당합니다.
foreach ($appRole in $appRoles) {
    # 관리형 ID의 주체 ID, Microsoft Graph 서비스 주체의 리소스 ID 및 특정 앱 역할 ID를 포함한 역할 할당 매개변수를 정의합니다.
    $bodyParam = @{
        PrincipalId = $managedIdentity.Id  # 관리형 ID의 ID(서비스 주체)
        ResourceId  = $graphSPN.Id         # Microsoft Graph 서비스 주체의 ID
        AppRoleId   = $appRole.Id          # 할당되는 앱 역할의 ID
    }

    # 관리형 ID에 대한 새로운 앱 역할 할당을 생성하여 지정된 권한을 부여합니다.
    New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $managedIdentity.Id -BodyParameter $bodyParam
}

이제 귀하의 ID 주체 Principal ID 에는 애플리케이션, 디렉터리 및 정책을 나열하기 위한 필수 권한이 부여되었습니다.

Entra ID 애플리케이션 설정

이번 단계에서는 Teleport Auth Connector가 사용될 Entra ID 엔터프라이즈 애플리케이션을 수동으로 구성합니다.

지정된 애플리케이션을 생성하고, 토큰 서명 요청을 할당하며, 필요한 SAML 매개변수를 설정하는 PowerShell 스크립트를 제공합니다.

계속 진행하려면 다음 매개변수를 정의해야 합니다:

  • Application name: Entra ID 애플리케이션 이름, 일반적으로 Teleport your.cluster.address 로 설정합니다.
  • example.teleport.sh:443: 귀하의 Teleport 프록시 주소.
  • Auth Connector Name: 일반적으로 entra-id 로 설정되는 Teleport Auth Connector 이름.

이 매개변수가 정의되면 Azure Cloud Shell을 PowerShell 모드로 열거나, 이전 단계에서 생성된 세션을 사용합니다.

# 애플리케이션 생성 및 앱 역할 할당 권한에 필요한 범위로 Microsoft Graph에 연결합니다.
Connect-MgGraph -Scopes "Application.ReadWrite.All", "AppRoleAssignment.ReadWrite.All"

# 애플리케이션 관리를 위한 Microsoft Graph 모듈을 가져옵니다.
Import-Module Microsoft.Graph.Applications

# 표시 이름을 포함한 애플리케이션 매개변수를 정의합니다.
$params = @{
	displayName = 'Application name'  # 새 애플리케이션의 표시 이름을 설정합니다.
}

# SAML 애플리케이션 템플릿 ID를 설정합니다.
# 이 ID는 갤러리에 없는 SAML 애플리케이션 템플릿에 해당합니다.
$applicationTemplateId = "8adf8e6e-67b2-4cf2-a259-e3dc5476c621"

# 새 애플리케이션 및 해당 서비스 주체를 생성하기 위해 애플리케이션 템플릿을 인스턴스화합니다.
$app = Invoke-MgInstantiateApplicationTemplate -ApplicationTemplateId $applicationTemplateId -BodyParameter $params

# 새로 생성된 애플리케이션의 Application ID, Object ID 및 Service Principal ID를 추출합니다.
$appId = $app.Application.AppId       # 애플리케이션의 고유 식별자 (클라이언트 ID).
$objectId = $app.Application.Id       # Azure AD 내 애플리케이션의 고유 객체 ID.
$servicePrincipal = $app.ServicePrincipal.Id  # 서비스 주체의 고유 객체 ID.

# SAML에 사용되는 토큰 서명 인증서 매개변수를 정의합니다.
$principalTokenSigningCertificateParams = @{
	displayName = "CN=azure-sso"  # SAML 토큰 서명 인증서의 공통 이름(CN).
}

# SAML 인증에 필요한 서비스 주체에 토큰 서명 인증서를 추가합니다.
$cert = Add-MgServicePrincipalTokenSigningCertificate -ServicePrincipalId $servicePrincipal -BodyParameter $principalTokenSigningCertificateParams

# SAML을 구성하는 데 사용될 인증서의 지문을 추출합니다.
$thumbprint = $cert.Thumbprint

# 서비스 주체에 대한 추가 SAML 전용 속성을 설정합니다.
$updateServicePrincipalParams = @{
	preferredSingleSignOnMode = "saml"                    # SAML을 단일 로그온 모드로 설정합니다.
	preferredTokenSigningKeyThumbprint = $thumbprint      # 토큰 서명을 위한 추가 인증서의 지문을 사용합니다.
	appRoleAssignmentRequired = $false                    # 명시적인 앱 역할 할당 없이 앱 액세스를 허용합니다.
}

# SAML 구성으로 서비스 주체를 업데이트합니다.
Update-MgServicePrincipal -ServicePrincipalId $servicePrincipal -BodyParameter $updateServicePrincipalParams

# 프록시(URL) (Teleport Auth 서비스 주소)를 정의합니다.
# 이 URL은 리디렉션 URI 및 식별자 URI로 사용됩니다.
$proxyURL = 'https://example.teleport.sh:443'.TrimEnd("/").TrimEnd(":443")  # 표준 형식을 위해 기본 443 포트를 제거합니다.
$acsURL = $proxyURL+'/v1/webapi/saml/acs/Auth Connector Name'

# SAML 인증을 위한 리디렉션 URI를 포함한 웹 속성을 정의합니다.
$web = @{
	redirectUris = @($acsURL)  # 애플리케이션의 리디렉션 URI를 설정합니다.
}

# 웹 속성과 식별자 URI로 애플리케이션을 업데이트합니다.
# 이는 SAML 기반 인증을 활성화하고 보안 그룹 주장을 포함합니다.
Update-MgApplication -ApplicationId $objectId -Web $web -IdentifierUris @($acsURL)

# 애플리케이션이 포함할 그룹 멤버십 주장을 위한 선택적 주장을 정의합니다.
$optionalClaims = [Microsoft.Graph.PowerShell.Models.MicrosoftGraphOptionalClaims]::DeserializeFromDictionary(@{
	AccessToken = @(
      @{ Name = 'groups' }
   )
   IdToken = @(
	  @{ Name = 'groups' }
   )
   Saml2Token = @(
      @{ Name = 'groups' }
   )
})

Update-MgApplication -ApplicationId $objectId -GroupMembershipClaims "SecurityGroup" -OptionalClaims $optionalClaims


# 표시 목적으로 테넌트 ID를 가져옵니다.
$tenant = Get-AzTenant

# 참조를 위해 애플리케이션 ID, 테넌트 ID 및 추가 정보를 출력합니다.
Write-Output "-------------------------------------------------------" "다음 세부 정보를 복사하고 붙여넣기:" "애플리케이션 ID (클라이언트 ID): $appId" "테넌트 ID: $tenant" "-------------------------------------------------------"

클러스터가 인터넷에서 공개적으로 접근 가능하고 Auth Service 시스템 자격 증명 대신 OIDC를 사용해야 하거나 선호하는 경우 Teleport를 Entra ID 애플리케이션의 OIDC 공급자로 구성할 수 있습니다. Auth Service의 Azure Identity에 필요한 권한을 이미 할당한 경우, 다음 섹션을 건너뛸 수 있습니다.

애플리케이션을 위한 연합 자격 증명을 구성하려면, 이전에 사용한 Azure Cloud Shell 터미널에서 다음 스크립트를 실행합니다.


# 연합 정체성 자격 증명을 위한 주체를 정의합니다. 이는 Teleport에서 정의된 상수입니다.
$subject = "teleport-azure"

# 자격 증명에 대해 허용되는 청중을 정의합니다. 상수 값입니다.
$audiences = @("api://AzureADTokenExchange")

# 발행자를 Teleport 클러스터 프록시 URL로 설정합니다.
$issuer = $proxyURL

# 애플리케이션 내 식별을 위한 연합 정체성 자격 증명의 고유한 이름을 정의합니다.
$name = "teleport-oidc"

# Microsoft Graph에서 애플리케이션을 위한 새로운 연합 정체성 자격 증명을 생성합니다.
$credential = New-MgApplicationFederatedIdentityCredential -ApplicationId $objectId -Subject $subject -Audiences $audiences -Issuer $issuer -Name $name


# 애플리케이션에 필요한 권한을 구성합니다.

# 고유한 주체 ID(UUID)를 사용하여 관리되는 정체성의 서비스 주체 객체를 가져옵니다.
$managedIdentity = Get-MgServicePrincipal -ServicePrincipalId $servicePrincipal


# Microsoft Graph 엔터프라이즈 애플리케이션 객체를 설정합니다.
# 이는 특정 앱 ID를 가진 Azure AD에서 Microsoft Graph를 나타내는 서비스 주체 객체입니다.
$graphSPN = Get-MgServicePrincipal -Filter "AppId eq '00000003-0000-0000-c000-000000000000'"

# 관리되는 정체성에 할당할 권한 범위를 정의합니다.
# 이는 관리되는 정체성에 필요한 Microsoft Graph API 권한입니다.
$permissions = @(
  "Application.Read.All"   # 디렉토리의 애플리케이션을 읽을 수 있는 권한
  "Directory.Read.All"     # 디렉토리 데이터를 읽을 수 있는 권한
  "Policy.Read.All"        # 디렉토리 내 정책을 읽을 수 있는 권한
)

# 정의된 권한과 일치하는 Microsoft Graph 서비스 주체의 앱 역할을 필터링하고 찾습니다.
# "AllowedMemberTypes"에 "Application"이 포함된 역할만 포함합니다(관리된 정체성에 적합).
$appRoles = $graphSPN.AppRoles |
    Where-Object Value -in $permissions |
    Where-Object AllowedMemberTypes -contains "Application"

# 각 앱 역할을 반복하며 관리되는 정체성에 할당합니다.
foreach ($appRole in $appRoles) {
    # 역할 할당을 위한 매개변수를 정의합니다. 여기에는 관리되는 정체성의 주체 ID,
    # Microsoft Graph 서비스 주체의 리소스 ID, 할당할 특정 앱 역할 ID가 포함됩니다.
    $bodyParam = @{
        PrincipalId = $managedIdentity.Id  # 관리되는 정체성의 ID (서비스 주체)
        ResourceId  = $graphSPN.Id         # Microsoft Graph 서비스 주체의 ID
        AppRoleId   = $appRole.Id          # 할당되는 앱 역할의 ID
    }

    # 지정된 권한을 부여하는 관리되는 정체성에 대해 새로운 앱 역할 할당을 생성합니다.
    New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $managedIdentity.Id -BodyParameter $bodyParam
}

Teleport 리소스 설정

Teleport tctl 명령은 에어갭 클러스터를 위한 Entra ID 통합을 설정하고 구성하는 상호작용 가이드를 제공합니다.

사용하려면 tctl 버전 v16.4.7 이상이 설치되어 있어야 하며, 기본 Access List 소유자 목록을 선택하십시오.
지정된 Teleport 사용자는 Entra ID 통합에 의해 가져온 Access Lists의 소유자가 됩니다.
Access List Owner 는 기존 Teleport 사용자여야 합니다.
여러 Access List 소유자를 선호하는 경우, 각 사용자와 함께 플래그를 반복하십시오. 예: --default-owner=owner1 --default-owner=owner2 .

Teleport Auth Service 주소도 example.teleport.sh:443 로 제공해야 합니다.
다중화 모드로 실행 중인 클러스터에서는 이 주소가 프록시 주소와 동일합니다.

이전 단계에서 Entra ID의 OIDC 제공자로 Teleport를 사용하기로 선택했다면, 아래 명령에서 --use-system-credentials 플래그를 제거하십시오.

현재 수동 모드를 사용할 때는 --no-access-graph 플래그 없이 운영하는 것이 불가능합니다.

Teleport 정책을 지원하는 라이센스가 있는 경우 Access Graph 통합을 활성화합니다.

tctl plugins install entraid \ --default-owner=Access List Owner \ --default-owner=someOtherOwner@teleport.sh \ --auth-connector-name="Auth Connector Name" \ --use-system-credentials \ --no-access-graph \ --manual-setup \ --auth-server example.teleport.sh:443

tctl plugins install entraid 가이드에서 제공하는 세부 지침을 따라서 Entra ID 플러그인을 설치하고 구성하십시오.

3/3단계. Teleport Access Graph에서 Entra ID 디렉토리 분석

통합 온보딩이 완료된 직후,
당신의 Entra ID 디렉토리는 Teleport 클러스터와 Access Graph에 가져와질 것입니다.

Access Graph UI에서 Entra ID 사용자와 그룹을 찾을 수 있습니다. Entra ID SSO가 AWS 계정에 설정되어 있고,
AWS 계정이 Teleport에 연결되었다면,
Access Graph는 또한 Entra ID 신원에 부여된 AWS 리소스에 대한 접근을 보여줄 것입니다.

다음 예에서 Bob은 Entra ID에서 AWS-Engineers 그룹에 할당되어 있습니다.
이로 인해 그는 SSO를 사용하여 AWS IAM 역할 Engineers 를 맡을 수 있으며,
결과적으로 Bob은 두 개의 S3 버킷에 접근할 수 있습니다.

Teleport 원문 보기