AWS Builder Center: Learn, Build and Connect with builders in the AWS community
AWS Builder Center is the official home for builders on AWS. Share and read what others are working on, follow people who inspire you, explore training and workshops, and find tools to support what you're building.
¿Cómo soluciono los errores de permisos que aparecen al crear una base de conocimientos en Amazon Bedrock?
Recibo errores relacionados con los permisos cuando intento crear una base de conocimientos de Amazon Bedrock. Quiero resolver estos errores de permisos para configurar correctamente la base de conocimientos.
Descripción corta
Para crear una base de conocimientos en Amazon Bedrock, debes configurar un rol de servicio. El rol de servicio proporciona a Amazon Bedrock los permisos necesarios para acceder a los servicios de AWS necesarios. Puedes utilizar el rol de servicio que Amazon Bedrock ya ha creado para ti. O bien, puedes crear un rol de servicio personalizado y asignarle los permisos necesarios.
Resolución
Falta el rol de servicio de IAM
Si no tienes una política de relación de confianza de Amazon Bedrock para el rol de servicio Identity and Access Management (IAM) para crear la base de conocimientos de Amazon Bedrock, verás el siguiente error:
"Bedrock Knowledge Base was unable to assume the given role. Provide the proper permissions and retry the request"
Para resolver este error, adjunta la siguiente política de relación de confianza para Amazon Bedrock a tu política de IAM:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Faltan permisos de IAM
Si el rol de IAM que utilizaste para crear la base de conocimientos de Amazon Bedrock no tiene el permiso iam:CreateRole, recibirás el siguiente error:
"User: arn:aws:sts::account id:assumed-role/IAM role/IAM user is not authorized to perform: iam:CreateRole on resource: arn:aws:iam:region:account id:role/service-role/bedrock-knowledge-base because no identity-based policy allows the iam:CreateRole action"
Para resolver este error, agrega el permiso iam:CreateRole a tu política de IAM:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:AttachRolePolicy", "iam:CreateRole", "iam:PutRolePolicy" ], "Resource": "arn:aws:iam::*:role/service-role-name" } ] }
**Nota:**Sustituye service-role-name por el nombre de tu rol de servicio.
Si el rol de IAM que utilizaste para crear la base de conocimientos de Amazon Bedrock no tiene el permiso iam:PassRole, recibirás el siguiente error:
"User: arn:aws:sts::account id:assumed-role/IAM role/IAM user is not authorized to perform: iam:PassRole on resource: arn:aws:iam:region:account id:role/service-role/bedrock-knowledge-base because no identity-based policy allows the iam:PassRole action"
Para resolver este error, agrega el permiso iam:PassRole a tu política de IAM:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::*:role/service-role-name" } ] }
**Nota:**Sustituye service-role-name por el nombre de tu rol de servicio.
Faltan permisos para una colección de Amazon OpenSearch sin servidor
Si el rol de servicio de IAM no tiene los permisos necesarios para una colección de Amazon OpenSearch sin servidor, verás el siguiente error:
"The knowledge base storage configuration provided is invalid... Request failed: [security_exception] 403 Forbidden"
Para resolver este error, incluye los permisos necesarios para la colección de Amazon OpenSearch sin servidor en el rol de servicio de IAM. Si has creado una base de datos vectorial en Amazon OpenSearch sin servidor para tu base de conocimientos, adjunta la siguiente política:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "OpenSearchServerlessAPIAccessAllStatement", "Effect": "Allow", "Action": [ "aoss:APIAccessAll" ], "Resource": [ "arn:aws:aoss:region:account-id:collection/collection-id" ] } ] }
La política anterior proporciona el rol de servicio de IAM que se utiliza para acceder a la colección.
Comprueba que la política de acceso a los datos de la consola de la colección de Amazon OpenSearch sin servidor dé permiso al rol de servicio Amazon Bedrock. Además, asegúrate de que el rol de servicio de Amazon Bedrock aparezca en la sección Entidad principal de la política de control de acceso a los datos.
Es posible que tu base de datos vectorial esté configurada con un secreto de AWS Secrets Manager. Asegúrate de que el rol de servicio de IAM permita a AWS Secrets Manager autenticar tu cuenta para que puedas acceder a la base de datos.
Falta la autorización de punto de enlace
Si no añadiste el nombre de dominio del punto de enlace de Amazon Bedrock a la política de red de la colección de Amazon OpenSearch Service, verás el siguiente error:
"The knowledge base storage configuration provided is invalid... Request failed: [http_exception] server returned 401"
Para conceder a Amazon Bedrock acceso a la colección privada o al punto de enlace de la nube virtual privada (VPC), añade el nombre de dominio del punto de enlace a la política de red.
Para resolver este error, actualiza la colección con una política de red privada. Si no tienes una colección con una política de red privada, debes crear una. Para más información, consulta la sección Crear una colección con una política de red privada en
Nota: Al crear una colección nueva, ve a Tipo de acceso y elige Privado. También debes seleccionar el acceso privado a los servicios de AWS y, a continuación, añadir bedrock.amazonaws.com a la lista de servicios permitidos.
Faltan permisos de CORS para tu bucket de S3
Si la base de conocimientos tiene un origen de datos de Amazon Simple Storage Service (Amazon S3) y el bucket no tiene los permisos necesarios para compartir recursos entre orígenes (CORS), verás el siguiente error:
"The knowledge base storage configuration provided is invalid... Dependency error document status code: 404, error message: no such index [bedrock-knowledge-base-default-index]"
Sin la configuración CORS adecuada en el bucket de S3, la base de conocimientos de Amazon Bedrock no podrá acceder a los datos almacenados en el bucket de S3.
Para resolver el error, configura CORS en tu bucket de S3 mediante la siguiente configuración de CORS:
[ { "AllowedHeaders": [ "*" ], "AllowedMethods": [ "GET", "PUT", "POST", "DELETE" ], "AllowedOrigins": [ "*" ], "ExposeHeaders": [ "Access-Control-Allow-Origin" ] } ]
Es posible que también veas este error porque Amazon OpenSearch sin servidor necesita tiempo para aplicar los cambios en todos los nodos o réplicas de un índice.
Para solucionar el problema de retraso que provoque Amazon OpenSearch sin servidor, toma las siguientes medidas:
- Asegúrate de que el rol de servicio que quieres usar tenga los permisos necesarios para acceder e interactuar con las colecciones de OpenSearch sin servidor y la base de datos vectorial seleccionada.
- Comprueba si ya tienes un índice o si puedes crear manualmente uno nuevo en Amazon OpenSearch sin servidor. Si puedes crear un índice manualmente desde el panel de Amazon OpenSearch, es posible que el error se deba a una posible coherencia del sistema. Para resolver este error, espera aproximadamente 5 minutos para permitir que el sistema aplique completamente los cambios y alcance un estado uniforme. Si no puedes crear un índice manualmente, asegúrate de tener los permisos necesarios para hacerlo. Para más información, consulta Ejemplos de conjuntos de datos en paneles de OpenSearch.
- Etiquetas
- Amazon Bedrock
- Idioma
- Español
Vídeos relacionados


Contenido relevante
preguntada hace un año
preguntada hace 2 años
OFICIAL DE AWSActualizada hace un año