Skip to content

๐Ÿ”ง EC2 ์„œ๋ฒ„์—์„œ AWS ๊ถŒํ•œ ์ธ์ฆ ๋ฐฉ์‹ย #38

Description

@psychology50

๋…ผ์˜ ์ฃผ์ œ

  • AWS access key, refresh key ์ฃผ์ž… ๋ฐฉ์‹์— ๋Œ€ํ•ด์„œ

๋…ผ์˜ ๋‚ด์šฉ

  • ํ˜„์žฌ AWS Config ๊ถŒํ•œ ์„ค์ • ๋ฐฉ์‹์€ ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ์ฃผ์ž…ํ•˜์—ฌ ์ธ์ฆํ•จ.
@Getter
@Configuration
public class AwsSnsConfig {
    private final String accessKey;
    private final String secretKey;
    private final String region;

    public AwsSnsConfig(
            @Value("${spring.cloud.aws.sns.credentials.access-key}") String accessKey,
            @Value("${spring.cloud.aws.sns.credentials.secret-key}") String secretKey,
            @Value("${spring.cloud.aws.sns.region.static}") String region
    ) {
        this.accessKey = accessKey;
        this.secretKey = secretKey;
        this.region = region;
    }

    @Bean
    public AwsCredentials awsSnsCredentials() {
        return AwsBasicCredentials.create(accessKey, secretKey);
    }

    ...
}
  • ํ•˜์ง€๋งŒ AWS ๊ถŒ๊ณ  ์‚ฌํ•ญ์— ๋”ฐ๋ฅด๋ฉด EC2 ์„œ๋ฒ„์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ธ์ฆ์„ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
@Configuration
public class AwsConfiguration {
    @Value("${cloud.aws.credentials.access-key}")
    private String awsAccessKey;

    @Value("${cloud.aws.credentials.secret-key}")
    private String awsSecretKey;

    @Value("${cloud.aws.region.static}")
    private String region;

    @Value("${spring.profiles.active:}")
    private String activeProfile;

    @Bean
    public AmazonSNSClient amazonSNSClient(Environment environment ) {
        if(StringUtils.equals(activeProfile , "")){
            return (AmazonSNSClient) AmazonSNSClientBuilder
                    .standard()
                    .withRegion(region)
                    .withCredentials(InstanceProfileCredentialsProvider.getInstance())
                    .build();
        }else{
            return (AmazonSNSClient) AmazonSNSClientBuilder
                    .standard()
                    .withRegion(region)
                    .withCredentials(new AWSStaticCredentialsProvider(
                            new BasicAWSCredentials(environment.getProperty("cloud.aws.credentials.access-key"), environment.getProperty("cloud.aws.credentials.secret-key"))))
                    .build();
        }
    }
}

๋”ฐ๋ผ์„œ ์ถ”ํ›„ ์œ„์˜ ๋ฐฉ์‹๋Œ€๋กœ ๋ณ€๊ฒฝํ•ด๋ณด๊ณ ์ž ํ•˜๋Š”๋ฐ, ์–ด๋–ป๊ฒŒ ์ƒ๊ฐํ•˜์‹œ๋‚˜์š”?

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

discussion๊ธด๊ธ‰ํ•˜์ง€ ์•Š๊ณ , ์ค‘์š”๋„๊ฐ€ ๋‚ฎ์€ ์ด์Šˆ

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions