

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.

# Cree un rol de servicio para las bases de conocimiento administradas de Amazon Bedrock
<a name="kb-managed-permissions"></a>

Para usar un rol personalizado para una base de conocimientos gestionada en lugar del que Amazon Bedrock crea automáticamente, cree un rol de IAM y adjunte los siguientes permisos siguiendo los pasos descritos en [ Crear un rol para delegar permisos a un servicio. AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) Incluya solo los permisos necesarios para su propia seguridad.

**nota**  
Una política no se puede compartir entre varios roles cuando se usa el rol de servicio.
+ Relación de confianza
+ Acceso a los modelos base de Amazon Bedrock
+ Acceso al origen de datos en el que almacena los datos
+ (Si configura un destino de almacenamiento multimodal) Acceda a su depósito de almacenamiento multimodal

**Topics**
+ [Relación de confianza](#kb-managed-permissions-trust)
+ [Permisos para acceder a los modelos de Amazon Bedrock](#kb-managed-permissions-access-models)
+ [Permisos para su destino de almacenamiento multimodal](#kb-managed-permissions-multimodal-storage)
+ [Permisos de acceso a los orígenes de datos](#kb-managed-permissions-access-ds)

## Relación de confianza
<a name="kb-managed-permissions-trust"></a>

La siguiente política permite a Amazon Bedrock asumir este rol y crear y gestionar bases de conocimientos. Puede restringir el alcance del permiso mediante una o más claves de contexto de condiciones globales. Para obtener más información, consulte las [claves de contexto de condición globales de AWS](IAM/latest/UserGuide/reference_policies_condition-keys.html). Configure el valor `aws:SourceAccount` en el ID de su cuenta. Use la condición `ArnEquals` o `ArnLike` para restringir el alcance a bases de conocimiento específicas.

**nota**  
Como práctica recomendada por motivos de seguridad, sustituya los ID de la {{\*}} base de conocimientos por otros específicos después de haberlos creado.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "bedrock.amazonaws.com"
            },
            "Action": "sts:AssumeRole",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "{{123456789012}}"
                },
                "ArnLike": {
                    "AWS:SourceArn": "arn:aws:bedrock:{{us-east-1}}:{{123456789012}}:knowledge-base/{{*}}"
                }
            }
        }
    ]
}
```

------

## Permisos para acceder a los modelos de Amazon Bedrock
<a name="kb-managed-permissions-access-models"></a>

Asocie la siguiente política para proporcionar permisos al rol para usar modelos de Amazon Bedrock para incrustar sus datos de origen.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "bedrock:ListFoundationModels",
                "bedrock:ListCustomModels"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "bedrock:InvokeModel"
            ],
            "Resource": [
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/amazon.titan-embed-text-v1",
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/cohere.embed-english-v3",
                "arn:aws:bedrock:{{us-east-1}}::foundation-model/cohere.embed-multilingual-v3"
            ]
        }
    ]
}
```

------

Si utiliza el modelo de TwelveLabs Marengo Embed 3.0 incrustación, la base de conocimientos invoca el modelo de forma sincrónica y asincrónica, por lo que el rol necesita permisos para ambos. Adjunte las siguientes afirmaciones, sustituyendo {{${Region}}} y {{${AccountId}}} por el Región de AWS ID de cuenta de su base de conocimientos y por el ID del {{${InferenceProfileId}}} perfil de inferencia que utilice. El `foundation-model` ARN se usa `*` para la región en lugar de para una región específica. Esto es necesario porque un perfil de inferencia interregional puede dirigir la invocación del modelo al modelo base subyacente en cualquiera de sus miembros. Regiones de AWS

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "BedrockInvokeModelStatement",
            "Effect": "Allow",
            "Action": [
                "bedrock:InvokeModel"
            ],
            "Resource": [
                "arn:aws:bedrock:*::foundation-model/twelvelabs.marengo-embed-3-0-v1:0",
                "arn:aws:bedrock:{{${Region}}}:{{${AccountId}}}:inference-profile/{{${InferenceProfileId}}}",
                "arn:aws:bedrock:{{${Region}}}:{{${AccountId}}}:async-invoke/*"
            ]
        },
        {
            "Sid": "BedrockGetAsyncInvokeStatement",
            "Effect": "Allow",
            "Action": [
                "bedrock:GetAsyncInvoke"
            ],
            "Resource": [
                "arn:aws:bedrock:{{${Region}}}:{{${AccountId}}}:async-invoke/*"
            ]
        }
    ]
}
```

**nota**  
La política anterior incluye un ARN para el perfil de [Regiones y modelos compatibles con los perfiles de inferencia](inference-profiles-support.md) inferencia porque, en algunas, Regiones de AWS es necesario especificar un perfil de inferencia para el TwelveLabs Marengo Embed 3.0 modelo al crear la base de conocimientos. En esas regiones, la base de conocimientos utiliza tanto el perfil de inferencia como el modelo bajo demanda, por lo que el rol necesita acceder a ambos. Si no usa un perfil de inferencia, puede omitir el ARN del perfil de inferencia de la lista. `Resource`  
Para determinar si la región que usa requiere un perfil de inferencia, consulte. [Procesamiento multimodal nativo](kb-managed-native-multimodal.md)

## Permisos para su destino de almacenamiento multimodal
<a name="kb-managed-permissions-multimodal-storage"></a>

El destino del almacenamiento multimodal es el bucket de Amazon S3 que se utiliza para procesar e incorporar contenido multimodal a su base de conocimientos. Amazon Bedrock Knowledge Bases crea una carpeta de `aws/` prefijos dentro del bucket para facilitar el acceso.

Adjunte la siguiente política para conceder permisos al rol para leer, escribir y eliminar este contenido. {{amzn-s3-demo-bucket}}Sustitúyalo por el nombre de su depósito de almacenamiento multimodal.

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3MultimodalStorageListStatement",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}"
            ]
        },
        {
            "Sid": "S3MultimodalStorageObjectStatement",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject",
                "s3:PutObject",
                "s3:DeleteObject"
            ],
            "Resource": [
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}/*"
            ]
        }
    ]
}
```

## Permisos de acceso a los orígenes de datos
<a name="kb-managed-permissions-access-ds"></a>

Seleccione uno de los siguientes orígenes de datos para asociar los permisos necesarios para el rol.

**Topics**
+ [Permisos de acceso al origen de datos en Amazon S3](#kb-managed-permissions-access-s3)
+ [Permisos de acceso al origen de datos de Confluence](#kb-managed-permissions-access-confluence)
+ [Permisos para acceder a su fuente de SharePoint datos de Microsoft](#kb-managed-permissions-access-sharepoint)
+ [Permisos para acceder a la fuente de datos de Web Crawler](#kb-managed-permissions-access-webcrawler)
+ [Permisos para acceder a tu fuente de OneDrive datos de Microsoft](#kb-managed-permissions-access-onedrive)
+ [Permisos para acceder a tu fuente de datos de Google Drive](#kb-managed-permissions-access-googledrive)

### Permisos de acceso al origen de datos en Amazon S3
<a name="kb-managed-permissions-access-s3"></a>

Si su origen de datos es Amazon S3, asocie la siguiente política para proporcionar permisos para que el rol acceda al bucket de S3 al que se conectará como origen de datos.

Si cifró la fuente de datos con una AWS KMS clave, asigne permisos para descifrar la clave a la función siguiendo los pasos que se indican en. [Permisos para descifrar su AWS KMS clave para sus fuentes de datos en Amazon S3](encryption-kb.md#encryption-kb-ds)

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "S3ListBucketStatement",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket"
            ],
            "Resource": [
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "{{123456789012}}"
                }
            }
        },
        {
            "Sid": "S3GetObjectStatement",
            "Effect": "Allow",
            "Action": [
                "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::{{amzn-s3-demo-bucket}}/*"
            ],
            "Condition": {
                "StringEquals": {
                    "aws:ResourceAccount": "{{123456789012}}"
                }
            }
        }
    ]
}
```

------

### Permisos de acceso al origen de datos de Confluence
<a name="kb-managed-permissions-access-confluence"></a>

Asocie la siguiente política para conceder permisos al rol para acceder a Confluence.

**nota**  
`secretsmanager:PutSecretValue` solo se necesita si utiliza la autenticación OAuth 2.0 con un token de actualización.  
El ** token de OAuth2.0 ** acceso de Confluence tiene un tiempo de caducidad predeterminado de 60 minutos. Si este token caduca mientras se está sincronizando el origen de datos (trabajo de sincronización), Amazon Bedrock utilizará el token de **actualización** proporcionado para regenerar este token. Esta regeneración actualiza los tokens de acceso y de actualización. Para mantener los tokens actualizados del trabajo de sincronización actual al siguiente, Amazon Bedrock requiere write/put permisos para tus credenciales secretas.

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "secretsmanager:GetSecretValue"
        ],
        "Resource": [
            "arn:aws:secretsmanager:{{${Region}}}:{{${AccountId}}}:secret:{{${SecretId}}}"
        ]
    }]
}
```

### Permisos para acceder a su fuente de SharePoint datos de Microsoft
<a name="kb-managed-permissions-access-sharepoint"></a>

Adjunte la siguiente política para proporcionar permisos para que el rol acceda a Microsoft SharePoint.

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "secretsmanager:GetSecretValue"
        ],
        "Resource": [
            "arn:aws:secretsmanager:{{${Region}}}:{{${AccountId}}}:secret:{{${SecretId}}}"
        ]
    }]
}
```

**nota**  
Si utiliza la autenticación basada en certificados (X.509) y almacena su certificado en un bucket de Amazon S3, también debe conceder `s3:GetObject` permiso al rol de servicio para el bucket y la clave donde está almacenado el archivo del certificado (.pfx o .pem). El siguiente ejemplo muestra la declaración de política adicional requerida:  

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "s3:GetObject"
        ],
        "Resource": [
            "arn:aws:s3:::{{${CertificateBucketName}}}/{{${CertificateKeyPath}}}"
        ]
    }]
}
```

### Permisos para acceder a la fuente de datos de Web Crawler
<a name="kb-managed-permissions-access-webcrawler"></a>

Adjunte la siguiente política para conceder permisos al rol para acceder a sitios web a través del Web Crawler. Si su sitio web requiere autenticación, incluya permisos para acceder al AWS Secrets Manager secreto que almacena sus credenciales.

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "secretsmanager:GetSecretValue"
        ],
        "Resource": [
            "arn:aws:secretsmanager:{{${Region}}}:{{${AccountId}}}:secret:{{${SecretId}}}"
        ]
    }]
}
```

### Permisos para acceder a tu fuente de OneDrive datos de Microsoft
<a name="kb-managed-permissions-access-onedrive"></a>

Adjunte la siguiente política para proporcionar permisos para que el rol acceda a Microsoft OneDrive.

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "secretsmanager:GetSecretValue"
        ],
        "Resource": [
            "arn:aws:secretsmanager:{{${Region}}}:{{${AccountId}}}:secret:{{${SecretId}}}"
        ]
    }]
}
```

### Permisos para acceder a tu fuente de datos de Google Drive
<a name="kb-managed-permissions-access-googledrive"></a>

Adjunta la siguiente política para conceder permisos al rol para acceder a Google Drive.

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "secretsmanager:GetSecretValue"
        ],
        "Resource": [
            "arn:aws:secretsmanager:{{${Region}}}:{{${AccountId}}}:secret:{{${SecretId}}}"
        ]
    }]
}
```