

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.

# AWS Secrets Manager mejores prácticas
<a name="best-practices"></a>

Secrets Manager proporciona un número de características de seguridad que debe tener en cuenta a la hora de desarrollar e implementar sus propias políticas de seguridad. Las siguientes prácticas recomendadas son directrices generales y no suponen una solución de seguridad completa. Puesto que es posible que estas prácticas recomendadas no sean adecuadas o suficientes para el entorno, plantéeselas como consideraciones útiles en lugar de como normas.

**Topics**
+ [Guarde las credenciales y otra información confidencial en AWS Secrets Manager](#best-practices-store-secrets-safely)
+ [Encontrar secretos sin protección en su código](#w2aab9b9)
+ [Elija una clave de cifrado para su secreto](#w2aab9c11)
+ [Utilice el almacenamiento en caché para recuperar los secretos](#w2aab9c13)
+ [Rotar sus secretos de](#w2aab9c15)
+ [Mitigar los riesgos del uso de la CLI](#w2aab9c17)
+ [Limitar el acceso a los secretos](#w2aab9c19)
+ [Replicar secretos](#w2aab9c21)
+ [Monitorear secretos](#w2aab9c23)
+ [Ejecute su infraestructura en redes privadas](#w2aab9c25)

## Guarde las credenciales y otra información confidencial en AWS Secrets Manager
<a name="best-practices-store-secrets-safely"></a>

Secrets Manager puede ayudarle a mejorar su posición de seguridad y el cumplimiento, y reducir el riesgo de acceso no autorizado a su información confidencial. Secrets Manager cifra los secretos en reposo mediante claves de cifrado que usted posee y almacena en AWS Key Management Service (AWS KMS). Al recuperar un secreto, Secrets Manager lo descifra y lo transmite de forma segura a través de TLS a su entorno local. Para obtener más información, consulte [Crea un AWS Secrets Manager secreto](create_secret.md).

## Encontrar secretos sin protección en su código
<a name="w2aab9b9"></a>

CodeGuru Reviewer se integra con Secrets Manager para usar un detector de secretos que encuentra secretos desprotegidos en el código. El detector de secretos busca contraseñas codificadas, cadenas de conexión a bases de datos, nombres de usuario y mucho más. Para obtener más información, consulte [Encuentre secretos desprotegidos en su código con Amazon Reviewer CodeGuru](integrating-codeguru.md).

Amazon Q puede escanear su base de código en busca de vulnerabilidades de seguridad y problemas de calidad del código para mejorar el estado de sus aplicaciones a lo largo del ciclo de desarrollo. Para obtener más información, consulte [Escaneo del código con Amazon Q](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/security-scans.html) en la *Guía del usuario de Amazon Q Developer*.

## Elija una clave de cifrado para su secreto
<a name="w2aab9c11"></a>

En la mayoría de los casos, recomendamos usar la clave `aws/secretsmanager` AWS administrada para cifrar los secretos. No se aplica ningún cargo por su uso.

Para poder acceder a un secreto desde otra cuenta o aplicar una política de claves a la clave de cifrado, utilice una clave administrada por el cliente para cifrar el secreto.
+ En la política de claves, asigne el valor `secretsmanager.<region>.amazonaws.com` a la clave de condición [https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-via-service](https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-via-service). Esto limita el uso de la clave solo a las solicitudes de Secrets Manager.
+ Para limitar aún más el uso de la clave solo a las solicitudes de Secrets Manager con el contexto correcto, utilice las claves o valores del [contexto de cifrado de Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/security-encryption.html#security-encryption-encryption-context) como condición a fin de utilizar la clave de KMS creando lo siguiente:
  + Un [operador de condición de cadena](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String) en una política de claves o de IAM
  + Una [restricción de la concesión](https://docs.aws.amazon.com/kms/latest/APIReference/API_GrantConstraints.html) en una concesión

Para obtener más información, consulte [Cifrado y descifrado secretos en AWS Secrets Manager](security-encryption.md).

## Utilice el almacenamiento en caché para recuperar los secretos
<a name="w2aab9c13"></a>

Para utilizar sus secretos de la manera más eficaz, le recomendamos que use uno de los siguientes componentes de almacenamiento en caché de Secrets Manager compatibles para almacenar en caché sus secretos y actualizarlos solo cuando sea necesario:
+ [Java con almacenamiento en caché del cliente](retrieving-secrets_cache-java.md)
+ [Python con almacenamiento en caché del cliente](retrieving-secrets_cache-python.md)
+ [.NET con almacenamiento en caché del cliente](retrieving-secrets_cache-net.md)
+ [Go con almacenamiento en caché del cliente](retrieving-secrets_cache-go.md)
+ [Rust con almacenamiento en caché del cliente](retrieving-secrets_cache-rust.md)
+ [AWS Parámetros y secretos de la extensión Lambda](retrieving-secrets_lambda.md)
+ [AWS Secrets Manager Secretos de uso en Amazon Elastic Kubernetes Service](integrate_eks.md)
+ Úselo [Uso del AWS Secrets Manager agente](secrets-manager-agent.md) para estandarizar el consumo de información confidencial de Secrets Manager en entornos como AWS Lambda Amazon Elastic Container Service, Amazon Elastic Kubernetes Service y Amazon Elastic Compute Cloud. 

## Rotar sus secretos de
<a name="w2aab9c15"></a>

Si no cambia sus secretos durante un largo período de tiempo, los secretos se vuelven más propensos a ser comprometidos. Con Secrets Manager, puede configurar la rotación automática con una frecuencia máxima de cuatro horas. Secrets Manager ofrece dos estrategias de rotación: [Un solo usuario](rotation-strategy.md#rotating-secrets-one-user-one-password) y [Usuarios alternativos](rotation-strategy.md#rotating-secrets-two-users). Para obtener más información, consulte [Rota AWS Secrets Manager los secretos](rotating-secrets.md).

## Mitigar los riesgos del uso de la CLI
<a name="w2aab9c17"></a>

Cuando se utiliza AWS CLI para invocar AWS operaciones, se introducen esos comandos en una consola de comandos. La mayoría de los intérpretes de comandos ofrecen características que podrían comprometer sus secretos, como el registro y la posibilidad de ver el último comando introducido. Antes de utilizar la AWS CLI para introducir información confidencial, asegúrese de [Mitigue los riesgos de AWS CLI utilizarlos para almacenar sus AWS Secrets Manager secretos](security_cli-exposure-risks.md).

## Limitar el acceso a los secretos
<a name="w2aab9c19"></a>

En las declaraciones de política de IAM que controlan el acceso a sus secretos, utilice el principio de [acceso de privilegio mínimo](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege). Puede utilizar los [roles y políticas de IAM](auth-and-access_iam-policies.md), [las políticas de recursos](auth-and-access_resource-policies.md) y el [control de acceso basado en atributos (ABAC)](auth-and-access-abac.md). Para obtener más información, consulte [Autenticación y control de acceso para AWS Secrets Manager](auth-and-access.md).

**Topics**
+ [Bloquear el acceso amplio a los secretos](#iam-contextkeys-blockpublicpolicy)
+ [Tener cuidado con las condiciones de dirección IP en las políticas](#iam-contextkeys-ipaddress)
+ [Limitar solicitudes con condiciones del punto de conexión de VPC](#iam-contextkeys-vpcendpoint)

### Bloquear el acceso amplio a los secretos
<a name="iam-contextkeys-blockpublicpolicy"></a>

En las políticas de identidad que permiten la acción `PutResourcePolicy`, le recomendamos que utilice `BlockPublicPolicy: true`. Esta condición significa que los usuarios solo pueden adjuntar una política de recursos a un secreto si la política no permite un acceso amplio. 

Secrets Manager utiliza el razonamiento automatizado de Zelkova para analizar las políticas de recursos para un acceso amplio. Para obtener más información sobre Zelkova, consulte [Cómo utilizar el AWS razonamiento automatizado para ayudarle a lograr una seguridad a gran escala en](https://aws.amazon.com/blogs/security/protect-sensitive-data-in-the-cloud-with-automated-reasoning-zelkova/) el blog de AWS seguridad.

En el siguiente ejemplo se muestra cómo utilizar `BlockPublicPolicy`.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": {
        "Effect": "Allow",
        "Action": "secretsmanager:PutResourcePolicy",
        "Resource": "arn:aws:secretsmanager:us-east-1:123456789012:secret:secretName-AbCdEf",
    "Condition": {
            "Bool": {
                "secretsmanager:BlockPublicPolicy": "true"
            }
        }
    }
}
```

------

### Tener cuidado con las condiciones de dirección IP en las políticas
<a name="iam-contextkeys-ipaddress"></a>

Pero tenga cuidado al especificar los [operadores de condición de dirección IP](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_IPAddress) o la clave de condición `aws:SourceIp` en la misma declaración de política que permite o deniega el acceso a Secrets Manager. Por ejemplo, si adjuntas a un secreto una política que restringe AWS las acciones a las solicitudes del rango de direcciones IP de la red corporativa, tus solicitudes como usuario de IAM que invocan la solicitud de la red corporativa funcionan según lo esperado. Sin embargo, si habilita otros servicios para que accedan al secreto en su nombre, como cuando habilita la rotación con una función Lambda, esa función llama a las operaciones de Secrets Manager desde un espacio AWS de direcciones interno. Las solicitudes afectadas por la política con el filtro de dirección IP generarán un error.

Además, la clave de condición `aws:sourceIP` es menos efectiva si la solicitud procede de un punto de conexión de VPC de Amazon VPC. Para restringir las solicitudes a un punto de enlace de la VPC específica, utilice [Limitar solicitudes con condiciones del punto de conexión de VPC](#iam-contextkeys-vpcendpoint).

### Limitar solicitudes con condiciones del punto de conexión de VPC
<a name="iam-contextkeys-vpcendpoint"></a>

Para permitir o denegar el acceso a solicitudes procedentes de una VPC o punto de enlace de la VPC particular, utilice `aws:SourceVpc` para limitar el acceso a las solicitudes procedentes de la VPC especificada o `aws:SourceVpce` para limitar el acceso a las solicitudes procedentes del punto de enlace de la VPC especificado. Consulte [Ejemplo: permisos y VPCs](auth-and-access_resource-policies.md#auth-and-access_examples_vpc).
+ `aws:SourceVpc` limita el acceso a las solicitudes procedentes de la VPC especificada.
+ `aws:SourceVpce` limita el acceso a las solicitudes procedentes del punto de conexión de VPC especificado.

Si utiliza estas claves de condición en una declaración de política de recurso que permite o deniega el acceso a los secretos de Secrets Manager, puede denegar el acceso de forma accidental a los servicios que Secrets Manager utiliza para obtener acceso a los secretos en su nombre. Solo algunos AWS servicios se pueden ejecutar con un punto final dentro de la VPC. Si restringe las solicitudes de un secreto a una VPC o un punto de enlace de la VPC, pueden producirse errores si las llamadas a Secrets Manager se realizan desde un servicio que no esté configurado.

Consulte [Uso de un punto final AWS Secrets Manager de VPC](vpc-endpoint-overview.md).

## Replicar secretos
<a name="w2aab9c21"></a>

Secrets Manager puede replicar automáticamente sus datos secretos en varias AWS regiones para cumplir con sus requisitos de resiliencia o recuperación ante desastres. Para obtener más información, consulte [Replica AWS Secrets Manager secretos en todas las regiones](replicate-secrets.md).

## Monitorear secretos
<a name="w2aab9c23"></a>

Secrets Manager le permite auditar y supervisar los secretos mediante la integración con los servicios de AWS registro, supervisión y notificación. Para obtener más información, consulte lo siguiente:
+ [AWS Secrets Manager Registra eventos con AWS CloudTrail](monitoring-cloudtrail.md)
+ [Monitoriza AWS Secrets Manager con Amazon CloudWatch](monitoring-cloudwatch.md)
+ [Supervise AWS Secrets Manager los secretos para garantizar el cumplimiento mediante AWS Config](configuring-awsconfig-rules.md)
+ [Monitoreo de los costos de Secrets Manager](monitor-secretsmanager-costs.md)
+ [Detecta amenazas con Amazon GuardDuty](monitoring-guardduty.md)

## Ejecute su infraestructura en redes privadas
<a name="w2aab9c25"></a>

Recomendamos que ejecute tanto como pueda de su infraestructura en redes privadas que no sean accesibles desde la internet pública. Puede establecer una conexión privada entre su VPC y Secrets Manager mediante la creación de un *punto de conexión de VPC de la interfaz*. Para obtener más información, consulte [Uso de un punto final AWS Secrets Manager de VPC](vpc-endpoint-overview.md).