Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Configura alertas para cierres de cuentas programáticos en Organizations AWS
Creado por Richard Milner-Watts (AWS), Debojit Bhadra () y Manav Yadav () AWS AWS
AWSRepositorio de | Entorno: producción | Tecnologías: administración y gobierno |
AWSservicios: Amazon AWS CloudTrail EventBridge; AWS Lambda; OrganizationsAWS; Amazon SNS |
Resumen
La CloseAccount APIopción for AWSOrganizations
Esto APIs podría aumentar el número de operadores que pueden cerrar o eliminar una AWS cuenta. Todos los usuarios que tengan acceso a la organización a través de AWS Identity and Access Management (IAM) en la AWS cuenta de administración de Organizations pueden llamarlosAPIs, por lo que el acceso no se limita al propietario del correo raíz de la cuenta con ningún dispositivo de autenticación multifactor (MFA) asociado.
Este patrón implementa alertas cuando se invocan las CloseAccount
teclas y RemoveAccountFromOrganization
APIs, de este modo, se pueden supervisar estas actividades. Para las alertas, utiliza un tema de Amazon Simple Notification Service
Requisitos previos y limitaciones
Requisitos previos
Una AWS cuenta activa
Una organización en AWS Organizations
Acceso a la cuenta de administración de la organización, ubicada en la raíz de la organización, para crear los recursos necesarios
Limitaciones
Como se describe en la APIreferencia de AWS Organizations,
CloseAccount
API permite cerrar solo el 10 por ciento de las cuentas de los miembros activos en un período continuo de 30 días.Cuando se cierra una AWS cuenta, su estado cambia aSUSPENDED. Durante 90 días después de esta transición de estado, AWS Support puede volver a abrir la cuenta. La cuenta se elimina permanentemente después de 90 días.
Usuarios que tienen acceso a la AWS cuenta de administración de Organizations y APIs que también pueden tener permisos para deshabilitar estas alertas. Si lo que más preocupa es un comportamiento malintencionado en lugar de eliminarlos accidentalmente, considere la posibilidad de proteger los recursos creados por este patrón con un límite de IAM permisos.
Las API solicitudes
CloseAccount
RemoveAccountFromOrganization
se tramitan en la región EE. UU. Este (Virginia del Norte) (us-east-1
). Por lo tanto, usted debe implementar esta solución enus-east-1
para poder observar los eventos.
Arquitectura
Pila de tecnología de destino
AWSOrganizations
AWS CloudTrail
Amazon EventBridge
AWSLambda
Amazon SNS
Arquitectura de destino
El siguiente diagrama muestra la arquitectura de soluciones para este patrón.
AWSOrganizations procesa una
RemoveAccountFromOrganization
solicitudCloseAccount
o una.Amazon EventBridge está integrado AWS CloudTrail para entregar estos eventos al bus de eventos predeterminado.
Una EventBridge regla de Amazon personalizada coincide con AWS las solicitudes de Organizations y llama a una AWS función Lambda.
La función Lambda envía un mensaje a un SNS tema, al que los usuarios pueden suscribirse para recibir alertas por correo electrónico o para su posterior procesamiento.
Si las notificaciones de Slack están habilitadas, la función de Lambda envía un mensaje a un webhook de Slack.
Herramientas
AWSservicios
AWS CloudFormationproporciona una forma de modelar un conjunto de recursos relacionados AWS y de terceros, aprovisionarlos de forma rápida y coherente y gestionarlos a lo largo de sus ciclos de vida, tratando la infraestructura como código.
Amazon EventBridge es un servicio de bus de eventos sin servidor que puede utilizar para conectar sus aplicaciones con datos de diversas fuentes. EventBridge recibe un evento, un indicador de un cambio en el entorno, y aplica una regla para enrutar el evento a un objetivo. Las reglas hacen coincidir los eventos con los objetivos o bien en función de la estructura del evento, llamado un patrón de evento, o bien de una programación.
AWSLambda es un servicio informático que admite la ejecución de código sin aprovisionar ni administrar servidores. Lambda ejecuta su código solo cuando es necesario y escala de manera automática, desde unas pocas solicitudes por día hasta miles por segundo. Solo paga por el tiempo de proceso que consume. No se aplican cargos cuando su código no se está ejecutando.
AWSOrganizations le ayuda a administrar y gobernar su entorno de forma centralizada a medida que crece y escala sus AWS recursos. Con AWS Organizations, puede crear nuevas AWS cuentas y asignar recursos mediante programación, agrupar cuentas para organizar sus flujos de trabajo, aplicar políticas a cuentas o grupos para la gobernanza y simplificar la facturación mediante el uso de un único método de pago para todas sus cuentas.
AWS CloudTrailsupervisa y registra la actividad de las cuentas en toda su AWS infraestructura y le permite controlar el almacenamiento, el análisis y las acciones correctivas.
Amazon Simple Notification Service (AmazonSNS) es un servicio de mensajería totalmente gestionado para la comunicación application-to-application (A2A) y application-to-person (A2P).
Otras herramientas
AWSLa biblioteca Lambda Powertools para Python
es un conjunto de utilidades que proporcionan funciones de seguimiento, registro, métricas y gestión de eventos para las funciones de Lambda.
Código
El código de este patrón se encuentra en el repositorio GitHub AWSAccount
La solución incluye una CloudFormation plantilla que implementa la arquitectura de este patrón. Utiliza la biblioteca AWS Lambda Powertools para Python para
Epics
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Lance la CloudFormation plantilla para la pila de soluciones. | La CloudFormation plantilla para este patrón se encuentra en la rama principal del GitHub repositorio Para iniciar la plantilla:
| AWSadministrador |
Compruebe que la solución se haya lanzado correctamente. |
| AWSadministrador |
Suscríbase al tema de SNS | (Opcional) Si quieres suscribirte al SNS tema:
Para obtener más información sobre cómo configurar SNS las notificaciones, consulta la SNSdocumentación de Amazon. | AWSadministrador |
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Envíe un evento de prueba al bus de eventos predeterminado. | El GitHub repositorio Nota: No puedes usar la fuente de CloudTrail eventos para enviar este evento, ya que no es posible enviar un evento como un AWS servicio. Para enviar un evento de prueba:
| AWSadministrador |
Compruebe que se ha recibido la notificación por correo electrónico. | Compruebe el buzón de correo que está suscrito al SNS tema para ver las notificaciones. Deberías recibir un correo electrónico con los detalles de la cuenta que se cerró y del director que realizó la API llamada. | AWSadministrador |
Verifique que se haya recibido la notificación de Slack. | (Opcional) Si especificaste un webhook URL para el | AWSadministrador |
Recursos relacionados
CloseAccount acción (APIreferencia de AWS Organizations)
RemoveAccountFromOrganization acción (APIreferencia de AWS Organizations)