🤨 aws 서비스 사용시 IAM role 설정 사용하기
IAM
AWS IAM(Identity and Access Management)은 AWS 리소스에 대한 보안 및 접근 제어를 제공하는 서비스입니다. IAM을 사용하면 사용자, 그룹, 정책, 역할(Role)을 정의하여 AWS 계정 내 리소스에 대해 누가 어떤 작업을 수행할 수 있는지를 제어할 수 있습니다.
IAM - Role
역할(Role)은 특정 작업을 할 수 있는 “모자”와 같습니다. 이 모자는 사용자가 아닌 누군가(또는 서비스)가 필요할 때만 쓰고, 역할을 끝내면 다시 벗는다고 할 수 있습니다.
IAM - Policy
Policy는 AWS 리소스에 대한 권한을 정의하는 JSON 기반 문서입니다. 이 문서는 어떤 작업을 허용(Allow)하거나 거부(Deny)할지를 명시합니다. 정책은 사용자가 할 수 있는 작업과 접근할 수 있는 리소스를 제한하거나 허용하는 데 사용되며, IAM 사용자, 그룹, 역할(Role)에 연결됩니다.
다양한 조건을 제어할 수 있습니다. exampl-bucket 이라는 S3 예시를 통해 몇가지 정리하겠습니다.
특정 버킷에 대한 읽기 policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ExampleBucketRead",
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:ListBucket"
],
"Resource": [
"arn:aws:s3:::example-bucket",
"arn:aws:s3:::example-bucket/*"
]
}
]
}
특정 버킷에 대한 수정 Policy
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ExampleBucketUploadWithCondition",
"Effect": "Allow",
"Action": [
"s3:PutObject"
],
"Resource": [
"arn:aws:s3:::example-bucket/*"
],
"Condition": {
"IpAddress": {
"aws:SourceIp": "192.168.0.0/24"
}
}
}
]
}
← Go home