

# Ejemplos de políticas basadas en recursos comunes
<a name="rbp-examples"></a>

Estos ejemplos muestran patrones comunes para controlar el acceso a los clústeres de Aurora DSQL. Puede combinar y modificar estos patrones para adaptarlos a sus requisitos de acceso específicos.

## Bloqueo del acceso público a Internet
<a name="rbp-example-block-public"></a>

Esta política bloquea las conexiones a los clústeres de Aurora DSQL desde el Internet público (no VPC). La política no especifica desde qué VPC pueden conectarse los clientes, solo que deben conectarse desde una VPC. Para limitar el acceso a una VPC específica, use `aws:SourceVpc` con el operador de condición `StringEquals`.

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Deny",
      "Principal": {
        "AWS": "*"
      },
      "Resource": "*",
      "Action": [
        "dsql:DbConnect",
        "dsql:DbConnectAdmin"
      ],
      "Condition": {
        "Null": {
          "aws:SourceVpc": "true"
        }
      }
    }
  ]
}
```

**nota**  
Este ejemplo solo usa `aws:SourceVpc` para comprobar las conexiones de VPC. Las claves de condición `aws:VpcSourceIp` y `aws:SourceVpce` proporcionan un mayor grado de detalle, pero no son necesarias para el control de acceso básico exclusivo de la VPC.

Para proporcionar una excepción para roles específicos, utilice esta política en su lugar:

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "DenyAccessFromOutsideVPC",
      "Effect": "Deny",
      "Principal": {
        "AWS": "*"
      },
      "Resource": "*",
      "Action": [
        "dsql:DbConnect",
        "dsql:DbConnectAdmin"
      ],
      "Condition": {
        "Null": {
          "aws:SourceVpc": "true"
        },
        "StringNotEquals": {
          "aws:PrincipalArn": [
            "arn:aws:iam::123456789012:role/ExceptionRole",
            "arn:aws:iam::123456789012:role/AnotherExceptionRole"
          ]
        }
      }
    }
  ]
}
```

## Restricción del acceso a una organización de AWS
<a name="rbp-example-org-access"></a>

Esta política restringe el acceso a las entidades principales de una organización de AWS:

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Deny",
      "Principal": {
        "AWS": "*"
      },
      "Action": [
        "dsql:DbConnect",
        "dsql:DbConnectAdmin"
      ],
      "Resource": "arn:aws:dsql:us-east-1:123456789012:cluster/mydsqlclusterid0123456789a",
      "Condition": {
        "StringNotEquals": {
          "aws:PrincipalOrgID": "o-exampleorgid"
        }
      }
    }
  ]
}
```

## Restricción del acceso a una unidad organizativa específica
<a name="rbp-example-ou-access"></a>

Esta política restringe el acceso a las entidades principales de una unidad organizativa (UO) específica de una organización de AWS, lo que proporciona un control más detallado que el acceso a toda la organización:

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Deny",
      "Principal": {
        "AWS": "*"
      },
      "Action": [
        "dsql:DbConnect"
      ],
      "Resource": "arn:aws:dsql:us-east-1:123456789012:cluster/mydsqlclusterid0123456789a",
      "Condition": {
        "StringNotLike": {
          "aws:PrincipalOrgPaths": "o-exampleorgid/r-examplerootid/ou-exampleouid/*"
        }
      }
    }
  ]
}
```

## Políticas de clúster multirregionales
<a name="rbp-example-multi-region"></a>

En el caso de los clústeres multirregionales, cada clúster regional tiene su propia política de recursos, lo que permite establecer controles específicos para cada región. A continuación, se muestra un ejemplo con diferentes políticas por región:

*Política de us-east:*

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Deny",
      "Principal": {
        "AWS": "*"
      },
      "Resource": "*",
      "Action": [
        "dsql:DbConnect"
      ],
      "Condition": {
        "StringNotEquals": {
          "aws:SourceVpc": "vpc-east1-id"
        },
        "Null": {
          "aws:SourceVpc": "true"
        }
      }
    }
  ]
}
```

*Política de us-east:*

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Resource": "*",
      "Action": [
        "dsql:DbConnect"
      ],
      "Condition": {
        "StringEquals": {
          "aws:SourceVpc": "vpc-east2-id"
        }
      }
    }
  ]
}
```

**nota**  
Las claves de contexto de condición pueden variar entre Regiones de AWS (como los ID de VPC).