[go] Go 언어를 사용하여 AWS IAM 정책 생성하기
AWS Identity and Access Management(IAM)은 AWS 리소스에 대한 접근을 안전하게 제어하는 기능을 제공합니다. IAM 정책을 사용하면 특정 작업에 대한 권한을 세부적으로 제어할 수 있습니다.
이번에는 Go 언어를 사용하여 AWS IAM 정책을 생성하는 방법을 알아보겠습니다.
AWS SDK 설치
먼저 AWS SDK for Go를 설치해야 합니다. 이를 위해서는 아래와 같이 명령어를 실행합니다.
go get -u github.com/aws/aws-sdk-go
IAM 정책 생성
아래의 예제 코드는 Go 언어를 사용하여 AWS IAM 정책을 생성하는 방법을 보여줍니다.
package main
import (
"fmt"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/iam"
)
func main() {
sess := session.Must(session.NewSessionWithOptions(session.Options{
SharedConfigState: session.SharedConfigEnable,
}))
svc := iam.New(sess)
policyInput := &iam.CreatePolicyInput{
PolicyDocument: aws.String(`{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::example-bucket/*"
}
]
}`),
PolicyName: aws.String("ExamplePolicy"),
}
result, err := svc.CreatePolicy(policyInput)
if err != nil {
fmt.Println("Error creating policy", err)
return
}
fmt.Println("Policy ARN: ", *result.Policy.Arn)
}
위 예제 코드는 IAM 서비스를 생성하고, CreatePolicyInput
을 사용하여 새 IAM 정책을 생성합니다. 생성된 정책의 ARN(Amazon Resource Name)이 출력됩니다.
IAM 정책을 생성하는 방법을 살펴보았습니다. Go 언어를 사용하여 AWS IAM 작업을 더 알아보고 싶다면, AWS SDK for Go의 공식 문서를 참고하시기 바랍니다.
이제 Go 언어를 사용하여 AWS IAM 정책 생성에 대해 알아보았습니다. 추후에 다른 기능들에 대해서도 공부해보시기 바랍니다!