De acuerdo con la documentación de AWS, para acceder a los recursos de AWS programáticamente o por medio de CLI, puede puede generar una clave de acceso en la consola de AWS como:
ID de clave de acceso: AKIAIOSFODNN7EXAMPLE
Clave de acceso secreta: wJalrXUtnFEMI / K7MDENG / bPxRfiCYEXAMPLEKEY
Y se dice en el documento:
- Elija Descargar credenciales y almacene las claves en una ubicación segura.
Su clave secreta ya no estará disponible a través de la administración de AWS Consola; Tendrás la única copia.
Dado que AWS no almacena la clave de acceso secreta, me pregunto cómo (la identificación de clave de acceso, la clave de acceso secreta) podría generarse internamente y cómo se podría autenticar de forma segura un acceso API / CLI.
Estoy pensando que AWS puede:
- generar un ID de clave de acceso aleatoriamente
- use una clave interna en AWS con algún algoritmo de cifrado para generar la clave de acceso secreta
- cuando autenticar una solicitud, aplicar la misma clave interna y la misma algoritmo para la clave de acceso id, y verifique si el resultado calculado es la clave de acceso secreta
Pero estoy lejos de ser un experto en seguridad, y me gustaría saber cómo se puede hacer esto en AWS en producción. Gracias.