AI Security Maturity Model·AWS v1.0.0

Arrastra para explorar · pellizca para ampliar

Fundacional Gestión de identidad y accesoCapa de defensa en profundidad: Identidad y datos Capacidad 3 · Generación aumentada por recuperación (RAG)Caso de uso: IA que conecta 👤 ClienteModelo de Responsabilidad Compartida de AWS: quién implementa y opera este control. Cliente = es tuyo; AWS = lo opera AWS y tú lo heredas; Compartida = ambos tienen obligaciones.

c3.2 Usa un rol de servicio de mínimo privilegio para la base de conocimiento

Da a la base de conocimiento de Bedrock un rol de servicio dedicado acotado solo a los modelos, fuentes S3, vector store y claves que necesita.

Fundacional
Mejorada
Avanzada
Esfuerzo: Bajo Impacto: Alto Scopes de IA generativaDe la AWS Generative AI Security Scoping Matrix.: 3 · Modelos preentrenados; 4 · Modelos ajustados (fine-tuned)

Guía de implementación

Cómo implementarlo en AWS

Crea un rol de servicio de KB personalizado con una relación de confianza para Amazon Bedrock, otorgando acceso solo a los modelos, fuentes de datos S3, base de datos vectorial y claves KMS requeridos. Establece políticas de acceso a datos y de acceso de red en la colección de OpenSearch Serverless.

Por qué el knowledge base necesita un rol acotado

Un knowledge base de Bedrock asume un rol de servicio de IAM para hacer su trabajo: llamar al modelo de embeddings, leer documentos fuente desde S3 y leer/escribir el vector store (por ejemplo, OpenSearch Serverless). Ese rol toca tus datos fuente y tu índice de recuperación, así que debe estar dedicado a este único knowledge base y acotado exactamente al modelo, los buckets y la colección que usa, no ser un rol amplio compartido entre varios knowledge bases.

Confía solo en Bedrock, protegido contra el confused deputy

La política de confianza permite que el principal de servicio de Bedrock asuma el rol, restringida a tu cuenta y (idealmente) al ARN del knowledge base específico:

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

Concede solo las tres cosas que el KB toca

Modelo de embeddings, fuentes de S3 y el vector store, cada uno acotado a recursos específicos:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "InvokeEmbeddingsModel",
      "Effect": "Allow",
      "Action": "bedrock:InvokeModel",
      "Resource": "arn:aws:bedrock:us-east-1::foundation-model/amazon.titan-embed-text-v2:0"
    },
    {
      "Sid": "ReadSourceDocuments",
      "Effect": "Allow",
      "Action": ["s3:GetObject", "s3:ListBucket"],
      "Resource": [
        "arn:aws:s3:::my-kb-sources",
        "arn:aws:s3:::my-kb-sources/*"
      ]
    },
    {
      "Sid": "AccessVectorStore",
      "Effect": "Allow",
      "Action": "aoss:APIAccessAll",
      "Resource": "arn:aws:aoss:us-east-1:111122223333:collection/<collection-id>"
    }
  ]
}

Haz coincidir las políticas propias del vector store

Para OpenSearch Serverless, IAM es solo la mitad: la colección también tiene una política de acceso a datos que debe conceder a este mismo rol lectura/escritura sobre el índice. Acota la sentencia de embeddings al único ARN del modelo de embeddings, y la de S3 solo al bucket o buckets fuente que este knowledge base ingiere, para que el rol no pueda leer datos no relacionados.

Nota de nomenclatura: reemplaza el id de cuenta, la región, el bucket, el id de la colección y el ARN del modelo de embeddings. Usa un rol por knowledge base en lugar de un rol compartido.

Criterios de aceptación

La KB usa un rol dedicado de mínimo privilegio; las políticas de acceso a datos y de red restringen la colección; sin permisos amplios con comodín.

Implementación práctica

Cómo se implementa este control en cada arquitectura de referencia:

Un rol de servicio de KB dedicado en la cuenta de IA generativa se acota solo a sus modelos, fuentes S3, vector store y claves, con políticas de acceso a datos y de red de OpenSearch que restringen la colección.

  1. Crea un rol de servicio de KB personalizado con relación de confianza para Amazon Bedrock, otorgando acceso solo a los modelos, fuentes de datos S3, base de datos vectorial, claves KMS requeridos y cualquier credencial de fuente de datos guardada en AWS Secrets Manager.
    Cuenta de IA generativa IAM Amazon Bedrock Secrets Manager
  2. Establece políticas de acceso a datos y de acceso de red en la colección de OpenSearch Serverless para que solo el rol de la KB pueda consultarla/escribirla.
    Cuenta de IA generativa OpenSearch Service IAM
  3. Agrega un permissions boundary para que el rol de la KB no pueda escalar más allá de sus fuentes y claves.
    Cuenta de IA generativa IAM

Cómo validar: La KB usa un rol dedicado; las políticas de datos/red de OpenSearch restringen la colección; IAM Access Analyzer no muestra permisos con comodín.

Evita: Dar al rol de la KB acceso amplio a S3 o Bedrock 'por si acaso'. Acótalo a las fuentes, colección y claves exactas que usa.

OU de IA generativa (multi-cuenta) →

Un rol de KB dedicado en la cuenta se acota a sus fuentes, colección y claves, con políticas de acceso de OpenSearch que restringen la colección.

  1. Crea un rol de servicio de base de conocimiento personalizado acotado solo a los modelos, fuentes S3, vector store, claves KMS requeridos y las credenciales de fuente de datos en AWS Secrets Manager.
    Capa de IA generativa (rol IAM) IAM Amazon Bedrock Secrets Manager
  2. Aplica políticas de acceso a datos y de acceso de red en la colección de OpenSearch Serverless restringiéndola al rol de la KB.
    Capa de IA generativa (rol IAM) OpenSearch Service IAM
  3. Adjunta un permissions boundary para acotar el alcance del rol.
    Capa de aplicación (rol IAM) IAM

Cómo validar: El rol de la KB es dedicado y de mínimo privilegio; el acceso a la colección está restringido; sin permisos con comodín.

Evita: Reutilizar el rol de ejecución de la aplicación para la base de conocimiento. Dale a la KB su propio rol acotado, separado de los roles de app y administración.

Cuenta única (punto de entrada) →

Amenazas que atiende

  • Un rol de KB con permisos excesivos que alcanza datos fuera de sus fuentes.
  • Cambios no autorizados a la configuración de la base de conocimiento.

Servicios AWS

AWS IAM Amazon Bedrock Knowledge Bases AWS Secrets Manager

Precios

El rol y las políticas son gratuitos. Pagas por la generación de embeddings (por token), el vector store (OCUs de OpenSearch Serverless o el almacén que elijas), el almacenamiento de S3 para las fuentes y la recuperación/generación en el momento de la consulta; acotar el rol no añade costo. Consulta Create a service role for Amazon Bedrock Knowledge Bases.

Mapeos de frameworks

OWASP GenAI/LLM Top 10 (2026)

  • LLM02 Sensitive Information Disclosure

NIST AI Risk Management Framework (AI 100-1)

  • MANAGE.1 AI risks are prioritized, responded to and managed

AWS Well-Architected Generative AI Lens (Security)

  • GENSEC01-BP03 Implement least privilege access to data stores

Recursos de aprendizaje

Referencias

  • AWS SRA para IA — Capacidad 3, Gestión de identidad y acceso