728x90
1. AWS Security Token Service 란?
AWS Security Token Service(AWS STS)를 사용하면 AWS 리소스에 대한 액세스를 제어할 수 있는 임시 보안 자격 증명을 생성하여 신뢰받는 사용자에게 제공할 수 있다. 임시 보안 자격 증명은 다음과 같은 차이점을 제외하고는 IAM 사용자가 사용할 수 있는 장기 액세스 키 자격 증명과 거의 동일한 효력을 지닌다.
- 임시 보안 자격 증명은 그 이름이 암시하듯 단기적 이다. 이 자격 증명은 몇 분에서 몇 시간까지 지속되도록 구성할 수 있다. 자격 증명이 만료된 후 AWS는 더는 그 자격 증명을 인식하지 못하거나 그 자격 증명을 사용한 API 요청으로부터 이루어지는 어떤 종류의 액세스도 허용하지 않는다.
- 임시 보안 자격 증명은 사용자와 함께 저장되지 않지만 동적으로 생성되어 요청시 사용자에게 제공된다. 임시 보안 자격 증명이 만료되었을 때(심지어는 만료 전이라도) 사용자는 새 자격 증명을 요청할 수 있다. 단, 자격 증명을 요청하는 해당 사용자에게 그렇게 할 수 있는 권한이 있어야 한다.
또한, 다음과 같은 임시 자격 증명 사용의 이점을 발생시킬 수 있다.
- 애플리케이션으로 장기 AWS 보안 자격 증명을 배포 또는 포함할 필요가 없다.
- 사용자에 대한 AWS 자격 증명을 정의하지 않고도 AWS 리소스에 대한 액세스 권한을 사용자에게 제공할 수 있다.
- 임시 보안 자격 증명은 수명이 제한되어 있어서, 더 이상 필요하지 않을 때 교체하거나 명시적으로 취소할 필요가 없다. 보안 자격 증명이 만료된 후에는 다시 사용할 수 없다. 그 자격 증명에 대해 유효 기간을 최대 한계까지 지정할 수 있다.
임시 보안 자격 증명은 AWS STS에 의해 생성된다. 기본적으로 AWS STS는 https://sts.amazonaws.com에 단일 엔드포인트가 있는 전역적 서비스이다. 그러나 지원되는 기타 다른 리전에서 엔드포인트에 대한 AWS STS API 호출을 할 수도 있다. 이렇게 지리적으로 더 가까운 리전에 있는 서버로 요청을 전송함으로써 지연 시간(서버 랙)을 단축할 수 있다. 자격 증명은 어떤 리전에서 오는지 상관없이 전역적으로 유효하다.
2. 정리
AWS STS를 공부하다 보니 Amazon Cognito의 자격증명풀과 비슷해 보여 Google을 이용하여 검색해 보니,
AWS STS vs Amazon Cognito의 글들이 꽤 보였다.
이부분에 대해서는 명백히 차이점을 내가 아직 이해는 못했지만, 추후에 다시 재작성할 예정이다.
또한, AWS 전문문서에 의하면 모바일 애플리케이션의 경우 Amazon Cognito 사용을 권장한다고 한다.
728x90