Teleport 발견 서비스는 AWS 리소스를 발견하기 위해 AWS IAM 권한이 필요합니다.
이 권한은 발견 서비스 인스턴스가 사용할 수 있는 AWS IAM ID에 연결되어야 합니다.
아래 각 섹션은 특정 유형의 AWS 리소스를 발견하는 데 사용되는 IAM 권한을 설명합니다.
EC2
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "EC2Discovery",
"Effect": "Allow",
"Action": [
"ec2:DescribeInstances",
"ssm:DescribeInstanceInformation",
"ssm:GetCommandInvocation",
"ssm:ListCommandInvocations",
"ssm:SendCommand"
],
"Resource": "*"
}
]
}
성명 | 목적 |
---|---|
EC2Discovery | EC2 인스턴스를 발견합니다. |
EKS
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "EKSDiscovery",
"Effect": "Allow",
"Action": [
"eks:DescribeCluster",
"eks:ListClusters"
],
"Resource": "*"
},
{
"Sid": "EKSManageAccess",
"Effect": "Allow",
"Action": [
"eks:AssociateAccessPolicy",
"eks:CreateAccessEntry",
"eks:DeleteAccessEntry",
"eks:DescribeAccessEntry",
"eks:TagResource",
"eks:UpdateAccessEntry"
],
"Resource": "*"
}
]
}
진술 | 목적 |
---|---|
EKSDiscovery | EKS 클러스터를 검색하고 추가 세부정보를 가져옵니다. |
EKSManageAccess | 발견된 EKS 클러스터에 대해 Teleport 접근을 자동으로 설정합니다. |
ARN 목록을 사용하여 권한의 범위를 특정 지역 또는 EKS 클러스터로 좁힐 수 있습니다. 리소스 ARN은 다음 형식을 가집니다:
arn:{Partition}:eks:{Region}:{Account}:cluster/{ClusterName}
EKSManageAccess
진술의 권한은 선택사항입니다. 이유는
Discovery Service가 발견하는 클러스터에 대한
Teleport Kubernetes Service 접근을 보장할 수 없을 때에도
EKS 클러스터를 검색할 수 있습니다.
EKSManageAccess
권한 중 일부를 생략하면
Teleport Kubernetes Service가 각 EKS 클러스터에 접근할 수 있도록
보장하는 것은 귀하의 책임입니다.
데이터베이스
DocumentDB
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "DocumentDBDiscovery",
"Effect": "Allow",
"Action": "rds:DescribeDBClusters",
"Resource": "*"
}
]
}
진술 | 목적 |
---|---|
DocumentDBDiscovery | Amazon DocumentDB 클러스터를 발견합니다. |
DynamoDB
데이터 입력: 데이터베이스 검색은 DynamoDB에 대해 사용할 수 없습니다.
DynamoDB 데이터베이스를 Teleport 클러스터에 등록하려면
정적 구성 또는 동적 db
리소스를 통해 데이터베이스를 수동으로 구성해야 합니다.
더 많은 정보를 보려면 데이터베이스 액세스 참조를 참조하세요.
ElastiCache for Redis
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ElastiCacheDiscovery",
"Effect": "Allow",
"Action": "elasticache:DescribeReplicationGroups",
"Resource": "*"
},
{
"Sid": "ElastiCacheFetchMetadata",
"Effect": "Allow",
"Action": [
"elasticache:DescribeCacheClusters",
"elasticache:DescribeCacheSubnetGroups",
"elasticache:ListTagsForResource"
],
"Resource": "*"
}
]
}
진술 | 목적 |
---|---|
ElastiCacheDiscovery | ElastiCache 복제 그룹을 발견합니다. |
ElastiCacheFetchMetadata | 각 데이터베이스에 대한 AWS 태그 및 추가 메타데이터를 Teleport 데이터베이스 레이블로 가져옵니다. |
Keyspaces
데이터 입력: 데이터베이스 검색은 Keyspaces에 대해 사용할 수 없습니다.
Keyspaces 데이터베이스를 Teleport 클러스터에 등록하려면
정적 구성 또는 동적 db
리소스를 통해 데이터베이스를 수동으로 구성해야 합니다.
더 많은 정보를 보려면 데이터베이스 액세스 참조를 참조하세요.
MemoryDB
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "MemoryDBDiscovery",
"Effect": "Allow",
"Action": "memorydb:DescribeClusters",
"Resource": "*"
},
{
"Sid": "MemoryDBFetchMetadata",
"Effect": "Allow",
"Action": [
"memorydb:DescribeSubnetGroups",
"memorydb:ListTags"
],
"Resource": "*"
}
]
}
진술 | 목적 |
---|---|
MemoryDBDiscovery | MemoryDB 데이터베이스 발견. |
MemoryDBFetchMetadata | 각 데이터베이스에 대한 AWS 태그 및 추가 메타데이터를 Teleport 데이터베이스 레이블로 가져옵니다. |
OpenSearch
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "OpenSearchDiscovery",
"Effect": "Allow",
"Action": [
"es:DescribeDomains",
"es:ListDomainNames"
],
"Resource": "*"
},
{
"Sid": "OpenSearchFetchMetadata",
"Effect": "Allow",
"Action": "es:ListTags",
"Resource": "*"
}
]
}
명령문 | 목적 |
---|---|
OpenSearchDiscovery | OpenSearch 도메인을 발견합니다. |
OpenSearchFetchMetadata | 발견된 각 도메인의 AWS 태그를 Teleport 데이터베이스 레이블로 가져옵니다. |
RDS
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "RDSDiscovery",
"Effect": "Allow",
"Action": [
"rds:DescribeDBClusters",
"rds:DescribeDBInstances"
],
"Resource": "*"
}
]
}
신고 | 목적 |
---|---|
RDSDiscovery | RDS 인스턴스 및 Aurora 클러스터를 발견합니다. |
RDS 데이터베이스를 발견하도록 구성된 경우,
Teleport Discovery Service는 RDS 인스턴스와 Aurora 클러스터를 모두 발견하려고 합니다.
rds:DescribeDBInstances
권한은 RDS 인스턴스를 찾는 데 사용되며,
발견된 Aurora 클러스터에 대한 추가 정보를 찾는 데에도 사용됩니다.
따라서 Aurora 클러스터만 발견하려는 경우에도 이 권한을 포함해야 합니다.
Aurora 클러스터 발견이 필요 없으면
rds:DescribeDBClusters
권한을 생략할 수 있습니다.
RDS Proxy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "RDSProxyDiscovery",
"Effect": "Allow",
"Action": "rds:DescribeDBProxies",
"Resource": "*"
},
{
"Sid": "RDSProxyFetchMetadata",
"Effect": "Allow",
"Action": [
"rds:DescribeDBProxyEndpoints",
"rds:ListTagsForResource"
],
"Resource": "*"
}
]
}
설명 | 목적 |
---|---|
RDSProxyDiscovery | RDS 프록시를 검색하고 각 프록시의 기본 엔드포인트를 Teleport 데이터베이스로 등록합니다. |
RDSProxyFetchMetadata | 검색된 프록시의 메타데이터를 가져와 AWS 리소스 태그를 Teleport 데이터베이스 레이블로 가져오고, 사용자 정의 엔드포인트를 Teleport 데이터베이스로 등록합니다. |
Redshift
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "RedshiftDiscovery",
"Effect": "Allow",
"Action": "redshift:DescribeClusters",
"Resource": "*"
}
]
}
진술 | 목적 |
---|---|
RedshiftDiscovery | 아마존 Redshift 클러스터 발견. |
Redshift Serverless
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "RedshiftServerlessDiscovery",
"Effect": "Allow",
"Action": "redshift-serverless:ListWorkgroups",
"Resource": "*"
},
{
"Sid": "RedshiftServerlessFetchMetadata",
"Effect": "Allow",
"Action": [
"redshift-serverless:ListEndpointAccess",
"redshift-serverless:ListTagsForResource"
],
"Resource": "*"
}
]
}
진술 | 목적 |
---|---|
RedshiftServerlessDiscovery | Redshift Serverless Workgroup을 발견합니다. |
RedshiftServerlessFetchMetadata | 발견된 workgroup의 메타데이터를 가져와 AWS 태그를 Teleport 데이터베이스 레이블로 가져오고, VPC 엔드포인트를 Teleport 데이터베이스로 등록합니다. |