기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
교차 서비스 혼동된 대리자 방지
혼동된 대리자 문제는 작업을 수행할 권한이 없는 엔터티가 권한이 더 많은 엔터티에 작업을 수행하도록 강요할 수 있는 보안 문제입니다. 에서는 교차 서비스 위장으로 인해 AWS혼동된 대리자 문제가 발생할 수 있습니다. 교차 서비스 가장은 한 서비스(호출하는 서비스)가 다른 서비스(호출되는 서비스)를 호출하고 호출되는 서비스의 승격된 권한을 활용하여 호출하는 서비스에서 액세스할 권한이 없는 리소스에 대해 작업할 때 발생할 수 있습니다. 혼동된 대리자 문제를 통한 무단 액세스를 방지하기 위해는 서비스 간에 데이터를 보호하는 데 도움이 되는 도구를 AWS 제공합니다. 이러한 도구를 사용하면 서비스 위탁자에게 부여된 권한을 제어하여 계정의 필요한 리소스로만 위탁자의 액세스를 제한할 수 있습니다. 서비스 위탁자의 액세스 권한을 주의 깊게 관리하면 권한이 없어야 하는 데이터 또는 리소스에 서비스가 부적절하게 액세스할 위험을 완화하는 데 도움이 될 수 있습니다.
일반 지침을 읽거나 특정 SageMaker AI 기능의 예제로 이동합니다.
주제
전역 조건 키로 권한 제한
Amazon SageMaker AI가 다른 서비스를 제공하는 리소스에 대한 권한을 제한하려면 리소스 정책에서 aws:SourceArn
및 aws:SourceAccount
전역 조건 키를 사용하는 것이 좋습니다. 두 전역 조건 키와 계정을 포함한 aws:SourceArn
값을 모두 사용하는 경우, aws:SourceAccount
값 및 aws:SourceArn
값의 계정은 동일한 정책 명령문에서 사용할 경우 반드시 동일한 계정 ID를 사용해야 합니다. 하나의 리소스만 교차 서비스 액세스와 연결되도록 허용하려는 경우 aws:SourceArn
을 사용하세요. 해당 계정의 모든 리소스가 교차 서비스 사용과 연결되도록 허용하려는 경우 aws:SourceAccount
을(를) 사용합니다.
혼동된 대리자 문제로부터 보호하는 가장 효과적인 방법은 aws:SourceArn
글로벌 조건 키를 전체 리소스와 함께 사용하는 ARN 것입니다. 전체 리소스를 모르거나 여러 리소스를 지정하는 경우의 알 ARN 수 없는 부분에 대해 와일드카드(*
)와 함께 aws:SourceArn
전역 조건 키를 사용합니다ARN. 예: arn:aws:sagemaker:*:
.123456789012
:*
다음 예제에서는 SageMaker AI에서 aws:SourceArn
및 aws:SourceAccount
전역 조건 키를 사용하여 혼동된 대리자 문제를 방지하는 방법을 보여줍니다.
{ "Version": "2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, # Specify an action and resource policy for another service "Action": "
service
:ActionName
", "Resource": [ "arn:aws:service
:::ResourceName
/*" ], "Condition": { "ArnLike": { "aws:SourceArn": "arn:partition
:sagemaker:region
:123456789012
:*" }, "StringEquals": { "aws:SourceAccount": "123456789012
" } } } }
SageMaker 엣지 관리자
다음 예제에서는 aws:SourceArn
전역 조건 키를 사용하여 123456789012
us-west-2
리전의 계정 번호로 생성된 SageMaker Edge Manager의 교차 서비스 혼동 대리자 문제를 방지하는 방법을 보여줍니다.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:
us-west-2
:123456789012
:*" } } } }
이 템플릿aws:SourceArn
의를 ARN 하나의 특정 패키징 작업으로 대체하여 권한을 추가로 제한할 수 있습니다.
SageMaker AI 이미지
다음 예제에서는 aws:SourceArn
전역 조건 키를 사용하여 SageMaker AI 이미지에 대한 교차 서비스 혼동 대리자 문제를 방지하는 방법을 보여줍니다. 이 템플릿은 Image
또는 ImageVersion
에 함께 사용하세요. 이 예제에서는 계정 번호가 인 ImageVersion
레코드ARN를 사용합니다123456789012
. 단, 계정 번호는 aws:SourceArn
값의 일부이므로 aws:SourceAccount
값을 지정할 필요가 없습니다.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:
partition
:sagemaker:us-west-2
:123456789012
:image-version
" } } } }
이 템플릿aws:SourceArn
의를 특정 이미지 또는 이미지 버전 전체로 바꾸ARN지 마십시오. 는 위에 제공된 형식이어야 하며 image
또는를 지정ARN해야 합니다image-version
. partition
자리 표시자는 이미지 또는 이미지 버전이 실행 중인 위치에 따라 AWS 상용 파티션(aws
) 또는 중국 AWS 내 파티션(aws-cn
)을 지정해야 합니다. 마찬가지로의 region
자리 표시자는 SageMaker AI 이미지를 사용할 ARN 수 있는 유효한 리전일 수 있습니다.
SageMaker AI 추론
다음 예제에서는 aws:SourceArn
전역 조건 키를 사용하여 SageMaker AI 실시간, 서버리스 및 비동기 추론에 대한 교차 서비스 혼동 대리자 문제를 방지하는 방법을 보여줍니다. 단, 계정 번호는 aws:SourceArn
값의 일부이므로 aws:SourceAccount
값을 지정할 필요가 없습니다.
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:
us-west-2
:123456789012
:*" } } } }
이 템플릿aws:SourceArn
의를 ARN 특정 모델 또는 엔드포인트의 전체로 바꾸지 마십시오. 는 위에 제공된 형식이어야 ARN 합니다. ARN 템플릿의 별표는 와일드카드가 아니므로 변경해서는 안 됩니다.
SageMaker AI 배치 변환 작업
다음 예제에서는 aws:SourceArn
전역 조건 키를 사용하여 us-west-2
리전123456789012
의 계정 번호로 생성된 SageMaker AI 배치 변환 작업에 대한 서비스 간 혼동된 대리자 문제를 방지하는 방법을 보여줍니다. 계정 번호가에 있으므로 aws:SourceAccount
값을 지정할 필요가 ARN없습니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:
us-west-2
:123456789012
:transform-job/*" } } } ] }
이 템플릿aws:SourceArn
의를 하나의 특정 배치 변환 작업ARN으로 대체하여 권한을 추가로 제한할 수 있습니다.
SageMaker AI Marketplace
다음 예제에서는 aws:SourceArn
전역 조건 키를 사용하여 us-west-2
리전의 계정 번호로 생성된 SageMaker AI Marketplace 리소스123456789012
에 대한 교차 서비스 혼동 대리자 문제를 방지하는 방법을 보여줍니다. 계정 번호가에 있으므로 aws:SourceAccount
값을 지정할 필요가 ARN없습니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:
us-west-2
:123456789012
:*" } } } ] }
이 템플릿aws:SourceArn
의를 ARN 특정 알고리즘 또는 모델 패키지의 전체로 바꾸지 마십시오. 는 위에 제공된 형식이어야 ARN 합니다. ARN 템플릿의 별표는 와일드카드를 나타내며 검증 단계의 모든 훈련 작업, 모델 및 배치 변환 작업과 SageMaker AI Marketplace에 게시된 알고리즘 및 모델 패키지를 다룹니다.
SageMaker Neo
다음 예제에서는 aws:SourceArn
전역 조건 키를 사용하여 123456789012
us-west-2
리전의 계정 번호로 생성된 SageMaker Neo 컴파일 작업에 대한 교차 서비스 혼동 대리자 문제를 방지하는 방법을 보여줍니다. 계정 번호가에 있으므로 aws:SourceAccount
값을 지정할 필요가 ARN없습니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:
us-west-2
:123456789012
:compilation-job/*
" } } } ] }
이 템플릿ARN의 aws:SourceArn
를 하나의 특정 컴파일 작업으로 대체하여 권한을 추가로 제한할 수 있습니다.
SageMaker 파이프라인
다음 예제에서는 aws:SourceArn
글로벌 조건 키를 사용하여 하나 이상의 파이프라인에서 파이프라인 실행 레코드를 사용하여 SageMaker 파이프라인에 대한 교차 서비스 혼동 대리자 문제를 방지하는 방법을 보여줍니다. 계정 번호가에 있으므로 aws:SourceAccount
값을 지정할 필요가 ARN없습니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:
partition
:sagemaker:region
:123456789012
:pipeline/mypipeline/*
" } } } ] }
이 템플릿aws:SourceArn
의를 특정 파이프라인 실행의 전체로 바꾸ARN지 마십시오. 는 위에 제공된 형식이어야 ARN 합니다. partition
자리 표시자는 파이프라인이 실행 중인 위치에 따라 AWS 상용 파티션(aws
) 또는 중국 AWS 내 파티션(aws-cn
)을 지정해야 합니다. 마찬가지로의 region
자리 표시자는 SageMaker 파이프라인을 사용할 ARN 수 있는 유효한 리전일 수 있습니다.
ARN 템플릿의 별표는 와일드카드를 나타내며 라는 파이프라인의 모든 파이프라인 실행을 포함합니다mypipeline
. 특정 파이프라인 하나가 아닌 계정 123456789012
내 모든 파이프라인에 대한 AssumeRole
권한을 허용하려면 aws:SourceArn
은 arn:aws:sagemaker:*:123456789012:pipeline/*
이 됩니다.
SageMaker 처리 작업
다음 예제에서는 aws:SourceArn
전역 조건 키를 사용하여 us-west-2
리전123456789012
의 계정 번호로 생성된 작업 SageMaker 처리에 대한 서비스 간 혼동된 대리자 문제를 방지하는 방법을 보여줍니다. 계정 번호가에 있으므로 aws:SourceAccount
값을 지정할 필요가 ARN없습니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:
us-west-2
:123456789012
:processing-job/*
" } } } ] }
이 템플릿aws:SourceArn
의를 ARN 하나의 특정 처리 작업으로 대체하여 권한을 추가로 제한할 수 있습니다.
SageMaker 스튜디오
다음 예제에서는 aws:SourceArn
전역 조건 키를 사용하여 123456789012
us-west-2
리전의 계정 번호로 생성된 SageMaker Studio의 교차 서비스 혼동 대리자 문제를 방지하는 방법을 보여줍니다. 단, 계정 번호는 aws:SourceArn
값의 일부이므로 aws:SourceAccount
값을 지정할 필요가 없습니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:
us-west-2
:123456789012
:*" } } } ] }
이 템플릿ARN의 aws:SourceArn
를 특정 Studio 애플리케이션, 사용자 프로필 또는 도메인으로 완전히 바꾸지 마십시오. 는 이전 예제에서 제공된 형식이어야 ARN 합니다. ARN 템플릿의 별표는 와일드카드가 아니므로 변경해서는 안 됩니다.
SageMaker 훈련 작업
다음 예제에서는 aws:SourceArn
전역 조건 키를 사용하여 us-west-2
리전123456789012
의 계정 번호로 생성된 SageMaker 훈련 작업에 대한 교차 서비스 혼동 대리자 문제를 방지하는 방법을 보여줍니다. 계정 번호가에 있으므로 aws:SourceAccount
값을 지정할 필요가 ARN없습니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sagemaker:
us-west-2
:123456789012
:training-job/*
" } } } ] }
이 템플릿aws:SourceArn
의를 ARN 하나의 특정 훈련 작업으로 대체하여 권한을 추가로 제한할 수 있습니다.
다음
실행 역할 관리에 대한 자세한 내용은 SageMaker AI 역할을 참조하세요.