AWS RoboMaker에 대한 인증 및 액세스 제어 - AWS RoboMaker

지원 종료 알림: 는 2025 AWS 년 9월 10일에 에 대한 지원을 중단합니다 AWS RoboMaker. 2025년 9월 10일 이후에는 AWS RoboMaker 콘솔 또는 AWS RoboMaker 리소스에 더 이상 액세스할 수 없습니다. 컨테이너화된 시뮬레이션 실행을 돕기 AWS Batch 위해 로 전환하는 방법에 대한 자세한 내용은 이 블로그 게시물을 참조하세요.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS RoboMaker에 대한 인증 및 액세스 제어

AWS Identity and Access Management (IAM)는 관리자가 AWS RoboMaker 리소스에 대한 액세스를 안전하게 제어하는 데 도움이 되는 AWS 서비스입니다. 관리자는 IAM를 사용하여 AWS RoboMaker 리소스를 사용할 수 있는 인증(로그인) 및 권한(권한 있음)을 받은 사용자를 제어합니다. IAM 는 추가 비용 없이 제공되는 AWS 계정의 기능입니다.

중요

빠르게 시작하려면 이 페이지에 나와 있는 기본 정보를 검토한 다음 시작하기 IAM정책이란 무엇입니까? 섹션을 살펴보세요.

주제

권한 부여 및 액세스 제어 소개

AWS RoboMaker 는 AWS Identity and Access Management (IAM)와 통합되어 다양한 기능을 제공합니다.

  • 에서 사용자 및 그룹을 생성합니다 AWS 계정.

  • 의 사용자 간에 AWS 리소스를 쉽게 공유할 수 있습니다 AWS 계정.

  • 각 사용자에게 고유한 보안 자격 증명을 할당합니다.

  • 서비스 및 리소스에 대한 각 사용자의 액세스 권한을 제어합니다.

  • AWS 계정에서 모든 사용자에 대해 단일 청구서를 받습니다.

에 대한 자세한 내용은 다음을 IAM참조하세요.

필요한 권한

AWS RoboMaker 또는 를 사용하여 본인 또는 다른 사용자의 권한 부여 및 액세스 제어를 관리하려면 올바른 권한이 있어야 합니다.

AWS RoboMaker 콘솔 사용에 필요한 권한

AWS RoboMaker 콘솔에 액세스하려면 AWS 계정의 AWS RoboMaker 리소스에 대한 세부 정보를 나열하고 볼 수 있는 최소 권한 집합이 있어야 합니다. 최소 필수 권한보다 더 제한적인 자격 증명 기반 권한 정책을 만들면 콘솔이 해당 정책에 연결된 엔터티에 대해 의도대로 작동하지 않습니다.

AWS RoboMaker 콘솔에 대한 읽기 전용 액세스의 경우 AWSRoboMakerReadOnlyAccess 정책을 사용합니다.

IAM 사용자가 시뮬레이션 작업을 생성하려는 경우 해당 사용자에게 iam:PassRole 권한을 부여해야 합니다. 역할 전달에 대한 자세한 내용은 서비스에 역할을 전달할 수 있는 사용자 권한 부여를 참조하세요AWS.

예를 들어 다음 정책을 사용자에게 연결할 수 있습니다. 이 정책은 시뮬레이션 작업을 생성할 수 있는 권한을 제공합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::123456789012:role/S3AndCloudWatchAccess" } ] }

AWS CLI 또는 에만 전화를 거는 사용자에 대해 최소 콘솔 권한을 허용할 필요는 없습니다 AWS API. 대신 수행하려는 API 작업과 일치하는 권한만 필요합니다.

콘솔 AWS RoboMaker 의 에서 월드를 보는 데 필요한 권한

사용자에게 다음 정책을 연결하여 AWS RoboMaker 콘솔에서 AWS RoboMaker 월드를 보는 데 필요한 권한을 부여할 수 있습니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "robomaker: DescribeWorld" ], "Resource": "*", "Effect": "Allow" } ] }

AWS RoboMaker 시뮬레이션 도구 사용에 필요한 권한

시뮬레이션을 생성하는 데 사용되는 IAM 사용자 또는 역할에는 시뮬레이션 도구에 액세스할 수 있는 권한이 자동으로 부여됩니다. 다른 사용자 또는 역할인 경우, robomaker:CreateSimulationJob 권한이 있어야 합니다.

인증 관리에 필요한 권한

암호, 액세스 키 및 다중 인증(MFA) 디바이스와 같은 자체 보안 인증을 관리하려면 관리자가 필요한 권한을 부여해야 합니다. 이러한 권한이 포함된 정책을 보려면 사용자가 자신의 자격 증명을 스스로 관리하도록 허용 단원을 참조하세요.

AWS 관리자는 에서 사용자, 그룹, 역할 및 정책을 생성하고 관리할 수 IAM 있도록 에 대한 전체 액세스 권한이 필요합니다IAM. 모든 에 대한 전체 액세스 권한이 포함된 AdministratorAccess AWS 관리형 정책을 사용해야 합니다 AWS. 이 정책은 AWS Billing and Cost Management 콘솔에 대한 액세스를 제공하거나 루트 사용자 보안 인증이 필요한 작업을 허용하지 않습니다. 자세한 내용은 AWS 일반 참조AWS 계정 루트 사용자 보안 인증이 필요한AWS 작업을 참조하세요.

주의

관리자 사용자만 에 대한 전체 액세스 권한을 가져야 합니다 AWS. 이 정책이 적용된 사용자는 누구나 AWS의 모든 리소스를 수정할 수 있는 권한 이외에 인증 및 액세스 제어를 완전히 관리할 수 있는 권한을 가지고 있습니다. 이 사용자를 생성하는 방법에 대한 자세한 내용은 IAM 관리자 사용자 생성 단원을 참조하세요.

액세스 제어에 필요한 권한

관리자가 IAM 사용자 자격 증명을 제공한 경우 액세스할 수 있는 리소스를 제어하기 위해 IAM 사용자에게 정책을 연결했습니다. 에서 사용자에게 연결된 정책을 보려면 다음 권한이 있어야 AWS Management Console합니다.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": [ "arn:aws:iam::*:user/${aws:username}" ] }, { "Sid": "ListUsersViewGroupsAndPolicies", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }

추가 권한이 필요한 경우 관리자에게 필요한 작업에 액세스할 수 있도록 정책을 업데이트해 달라고 요청하세요.

시뮬레이션 작업에 필요한 권한

시뮬레이션 작업을 생성할 때는 아래 권한이 있는 IAM 역할이 있어야 합니다.

  • amzn-s3-demo-source-bucket을 로봇 및 시뮬레이션 애플리케이션 번들이 포함된 버킷의 이름으로 바꿉니다.

  • amzn-s3-demo-destination-bucket 를 바꾸면 버킷이 출력 파일을 쓸 AWS RoboMaker 것임을 나타냅니다.

  • account#을 계정 번호로 바꿉니다.

퍼블릭 ECR 작업에는 , ecr-public:GetAuthorizationToken sts:GetServiceBearerToken및 최종 구현에 필요한 기타 권한과 같은 별도의 권한이 필요합니다. 자세한 내용은 Amazon ECR 사용 설명서퍼블릭 리포지토리 정책을 참조하세요.

Jobs with Private ECR images
{ "Version": "2012-10-17", "Statement": [ { "Action": "s3:ListBucket", "Resource": [ "arn:aws:s3:::amzn-s3-demo-source-bucket" ], "Effect": "Allow" }, { "Action": [ "s3:Get*", "s3:List*" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-source-bucket/*" ], "Effect": "Allow" }, { "Action": "s3:Put*", "Resource": [ "arn:aws:s3:::amzn-s3-demo-destination-bucket/*" ], "Effect": "Allow" }, { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Resource": [ "arn:aws:logs:*:account#:log-group:/aws/robomaker/SimulationJobs*" ], "Effect": "Allow" }, { "Action": [ "ecr:BatchGetImage", "ecr:GetAuthorizationToken", "ecr:BatchCheckLayerAvailability", "ecr:GetDownloadUrlForLayer" ], "Resource": "arn:partition:ecr:region:account#:repository/repository_name", "Effect": "Allow" } ] }
Jobs with Public ECR images
{ "Version": "2012-10-17", "Statement": [ { "Action": "s3:ListBucket", "Resource": [ "arn:aws:s3:::amzn-s3-demo-source-bucket" ], "Effect": "Allow" }, { "Action": [ "s3:Get*", "s3:List*" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-source-bucket/*" ], "Effect": "Allow" }, { "Action": "s3:Put*", "Resource": [ "arn:aws:s3:::amzn-s3-demo-destination-bucket/*" ], "Effect": "Allow" }, { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:DescribeLogStreams" ], "Resource": [ "arn:aws:logs:*:account#:log-group:/aws/robomaker/SimulationJobs*" ], "Effect": "Allow" }, { "Action": [ "ecr-public:GetAuthorizationToken", "sts:GetServiceBearerToken" ], "Resource": "*", "Effect": "Allow" } ] }

정책은 다음 신뢰 정책을 통해 역할에 연결되어야 합니다.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "robomaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "account#" // Account where the simulation job resource is created }, "StringEquals": { "aws:SourceArn": "arn:aws:robomaker:region:account#:simulation-job/*" } } } }

조건 키는 AWS 서비스 간 트랜잭션 중에 서비스가 혼동된 대리자로 사용되지 않도록 합니다. 조건 키에 대한 자세한 내용은 SourceAccount 및 섹션을 참조SourceArn하세요.

ROS 애플리케이션 또는 ROS 명령줄의 태그를 사용하는 데 필요한 권한

시뮬레이션 작업이 실행되는 동안 ROS 명령줄 또는 ROS 애플리케이션에서 태그를 태그 지정, 태그 지정 해제 및 나열할 수 있습니다. 아래 권한이 있는 IAM 역할이 있어야 합니다. account#을 계정 번호로 바꿉니다.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "robomaker:TagResource", "robomaker:UntagResource", "robomaker:ListTagsForResource", ], "Resource": [ "arn:aws:robomaker:*:account#:simulation-job*" ], "Effect": "Allow" } ] }

정책은 다음 신뢰 정책을 통해 역할에 연결되어야 합니다.

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Principal": { "Service": "robomaker.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "account#" // Account where the simulation job resource is created }, "StringEquals": { "aws:SourceArn": "arn:aws:robomaker:region:account#:simulation-job/*" } } } }

조건 키는 AWS 서비스 간 트랜잭션 중에 서비스가 혼동된 대리자로 사용되지 않도록 합니다. 조건 키에 대한 자세한 내용은 SourceAccount 및 섹션을 참조SourceArn하세요.

에서 를 AWS RoboMaker 사용하는 방법 이해 IAM

서비스는 다음과 같은 여러 IAM 가지 방법으로 와 작동할 수 있습니다.

  • 작업 - 정책에서 작업 사용을 AWS RoboMaker 지원합니다. 따라서 관리자가 AWS RoboMaker에서 엔터티가 작업을 완료할 수 있는지 제어할 수 있습니다. 예를 들어 엔터티가 GetPolicy AWS API 작업을 수행하여 정책을 볼 수 있도록 허용하려면 관리자가 iam:GetPolicy 작업을 허용하는 정책을 연결해야 합니다.

  • 리소스 수준 권한 – AWS RoboMaker 은 리소스 수준 권한을 지원하지 않습니다. 리소스 수준 권한을 사용하면 ARNs를 사용하여 정책의 개별 리소스를 지정할 수 있습니다. AWS RoboMaker 는 이 기능을 지원하지 않으므로 정책 시각적 편집기 에서 모든 리소스를 선택해야 합니다. JSON 정책 문서에서는 *Resource 요소에 사용해야 합니다.

  • 태그 기반 권한 부여 – AWS RoboMaker 에서는 태그 기반 권한 부여를 지원합니다. 이 기능을 사용하면 정책 조건에서 리소스 태그를 사용할 수 있습니다.

  • 임시 보안 인증 – AWS RoboMaker 에서는 임시 보안 인증을 지원합니다. 이 기능을 사용하면 페더레이션으로 로그인하거나 역할을 IAM 맡거나 교차 계정 역할을 맡을 수 있습니다. AssumeRole 또는 와 같은 작업을 호출 AWS STS API하여 임시 보안 자격 증명을 얻을 수 있습니다GetFederationToken.

  • 서비스 연결 역할 – AWS RoboMaker 에서는 서비스 역할을 지원합니다. 이 기능을 사용하면 서비스가 사용자를 대신하여 서비스 연결 역할을 맡을 수 있습니다. 이 역할을 사용하면 서비스가 다른 서비스의 리소스에 액세스해 사용자를 대신해 작업을 완료할 수 있습니다. 서비스 연결 역할은 IAM 계정에 표시되며 서비스가 소유합니다. IAM 관리자는 서비스 연결 역할에 대한 권한을 볼 수 있지만 편집할 수는 없습니다.

  • 서비스 역할 – AWS RoboMaker 에서는 서비스 역할을 지원합니다. 이 기능을 사용하면 서비스가 사용자를 대신하여 서비스 역할을 수임할 수 있습니다. 이 역할을 사용하면 서비스가 다른 서비스의 리소스에 액세스해 사용자를 대신해 작업을 완료할 수 있습니다. 서비스 역할은 IAM 계정에 표시되며 계정에서 소유합니다. 즉, IAM 관리자는 이 역할에 대한 권한을 변경할 수 있습니다. 그러나 권한을 변경하면 서비스의 기능이 손상될 수 있습니다.

인증 및 액세스 제어 문제 해결

다음 정보를 사용하여 로 작업할 때 발생할 수 있는 일반적인 문제를 진단하고 수정할 수 있습니다IAM.

에서 작업을 수행할 권한이 없습니다. AWS RoboMaker

에서 작업을 수행할 권한이 없음을 AWS Management Console 알리는 오류가 발생하면 사용자 이름과 암호를 제공한 관리자에게 문의해야 합니다.

다음 예제 오류는 라는 IAM my-user-name 사용자가 콘솔을 사용하여 CreateRobotApplication 작업을 수행하려고 하지만 권한이 없는 경우에 발생합니다.

User: arn:aws:iam::123456789012:user/my-user-name is not authorized to perform: aws-robomaker:CreateRobotApplication on resource: my-example-robot-application

이 예시에서는 aws-robomaker:CreateRobotApplication 작업을 사용해 my-example-robot-application 리소스에 액세스할 수 있도록 정책을 업데이트 해달라고 관리자에게 요청합니다.

저는 관리자이며 다른 사람이 에 액세스하도록 허용하고 싶습니다. AWS RoboMaker

다른 사용자가 액세스할 수 있도록 허용하려면 액세스가 필요한 사람 또는 애플리케이션에 대한 IAM엔터티(사용자 또는 역할)를 생성 AWS RoboMaker 해야 합니다. 다른 사용자들은 해당 엔터티에 대한 보안 인증을 사용해 AWS에 액세스합니다. 그런 다음 AWS RoboMaker에 대한 올바른 권한을 부여하는 정책을 엔터티에 연결해야 합니다.

바로 시작하려면 시작하기 IAM 단원을 참조하세요.