Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Nota
Búsqueda de Azure AI está disponible a través del portal de Azure, las API REST y los SDK de Azure. También respalda Foundry IQ, la capa de conocimiento administrada que transforma el contenido empresarial en bases de conocimiento reutilizables y compatibles con permisos para agentes en el portal de Microsoft Foundry.
En este artículo se explica cómo configurar una conexión de servicio de búsqueda a una cuenta de Azure Storage mediante una identidad administrada en lugar de proporcionar credenciales en el cadena de conexión.
Puede usar una identidad administrada asignada por el sistema o una identidad administrada asignada por el usuario. Las identidades administradas son inicios de sesión de Microsoft Entra y requieren asignaciones de roles para acceder a Azure Storage.
Requisitos previos
- Búsqueda de Azure AI, nivel Básico o superior, con una identidad administrada.
Nota
Si el almacenamiento está protegido por red y en la misma región que el servicio de búsqueda, debe usar una identidad administrada asignada por el sistema y una de las siguientes opciones de red: conectarse como servicio de confianza o conectarse mediante la regla de instancia de recursos.
Creación de una asignación de roles en Azure Storage
Inicie sesión en Azure portal y busque la cuenta de almacenamiento.
Seleccione Control de acceso (IAM) .
Seleccione Agregar y, a continuación, seleccione Asignación de roles.
En la lista de roles de función de trabajo, seleccione los roles necesarios para el servicio de búsqueda:
Tarea Asignación de roles Indexación de blobs mediante un indexador Añadir Storage Blob Data Reader Indexación de ADLS Gen2 mediante un indexador Añadir Storage Blob Data Reader Indexación de tablas mediante un indexador Agregar lector de datos de tabla de almacenamiento Indexación de archivos mediante un indexador Añadir lector y acceso a datos Escribir en una base de conocimiento Agregue Colaborador de datos de Storage Blob para proyecciones de objetos y archivos y Lector y Acceso a datos para proyecciones de tabla. Escribir en una caché de enriquecimiento (versión preliminar) Agregar colaborador de datos de Storage Blob y colaborador de datos de tabla de almacenamiento Guardar el estado de la sesión de depuración Agregar colaborador de datos de Storage Blob Seleccione Siguiente.
Seleccione Identidad administrada y, a continuación, seleccione Miembros.
Filtre por identidades administradas asignadas por el sistema o identidades administradas asignadas por el usuario. Debería ver la identidad administrada que creó anteriormente para el servicio de búsqueda. Si no tiene una, consulte Configuración de la búsqueda para usar una identidad administrada. Si ya ha configurado uno pero no está disponible, déle unos minutos.
Seleccione la identidad y guarde la asignación de roles.
Especificar una identidad administrada en un cadena de conexión
Una vez que tenga una asignación de roles, puede configurar una conexión a Azure Storage que funcione con ese rol.
Los indexadores usan un objeto de origen de datos para las conexiones a un origen de datos externo. En esta sección se explica cómo especificar una identidad administrada asignada por el sistema o una identidad administrada asignada por el usuario en la cadena de conexión de un origen de datos. Puede encontrar más ejemplos de cadenas de conexión en el artículo de identidad administrada.
Sugerencia
Puede crear una conexión de origen de datos para Azure Storage en el portal de Azure, especificando una identidad administrada asignada por el sistema o por el usuario, y luego ver la definición JSON para observar cómo se formula la cadena de conexión.
Identidad administrada asignada por el sistema
Debe tener una identidad administrada asignada por el sistema ya configurada y debe tener una asignación de roles en Azure Storage.
En el caso de las conexiones realizadas mediante una identidad administrada asignada por el sistema, el único cambio en la definición del origen de datos es el formato de la credentials propiedad .
Proporcione un cadena de conexión que contenga un ResourceId, sin clave de cuenta ni contraseña.
ResourceId debe incluir el identificador de suscripción de la cuenta de almacenamiento, el grupo de recursos de la cuenta de almacenamiento y el nombre de la cuenta de almacenamiento.
POST https://[service name].search.windows.net/datasources?api-version=2026-04-01
{
"name" : "blob-datasource",
"type" : "azureblob",
"credentials" : {
"connectionString" : "ResourceId=/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MY-DEMO-RESOURCE-GROUP/providers/Microsoft.Storage/storageAccounts/MY-DEMO-STORAGE-ACCOUNT/;"
},
"container" : {
"name" : "my-container", "query" : "<optional-virtual-directory-name>"
}
}
Identidad administrada asignada por el usuario
Debe tener una identidad administrada asignada por el usuario ya configurada y asociada al servicio de búsqueda, y la identidad debe tener una asignación de roles en Azure Storage.
Las conexiones realizadas a través de identidades administradas asignadas por el usuario usan las mismas credenciales que una identidad administrada asignada por el sistema, además de una propiedad de identidad adicional que contiene la colección de identidades administradas asignadas por el usuario. Solo se debe proporcionar una identidad administrada asignada por el usuario al crear el origen de datos.
Proporcione un cadena de conexión que contenga un ResourceId, sin clave de cuenta ni contraseña.
ResourceId debe incluir el identificador de suscripción de la cuenta de almacenamiento, el grupo de recursos de la cuenta de almacenamiento y el nombre de la cuenta de almacenamiento.
Proporcione un identity mediante la sintaxis que se muestra en el ejemplo siguiente. Establezca userAssignedIdentity en la identidad administrada asignada por el usuario.
POST https://[service name].search.windows.net/datasources?api-version=2026-04-01
{
"name" : "blob-datasource",
"type" : "azureblob",
"credentials" : {
"connectionString" : "ResourceId=/subscriptions/00000000-0000-0000-0000-00000000/resourceGroups/MY-DEMO-RESOURCE-GROUP/providers/Microsoft.Storage/storageAccounts/MY-DEMO-STORAGE-ACCOUNT/;"
},
"container" : {
"name" : "my-container", "query" : "<optional-virtual-directory-name>"
},
"identity" : {
"@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
"userAssignedIdentity" : "/subscriptions/00000000-0000-0000-0000-00000000/resourcegroups/MY-DEMO-RESOURCE-GROUP/providers/Microsoft.ManagedIdentity/userAssignedIdentities/MY-DEMO-USER-MANAGED-IDENTITY"
}
}
La información de conexión y los permisos en el servicio remoto se validan en tiempo de ejecución durante la ejecución del indexador. Si el indexador funciona correctamente, la sintaxis de conexión y las asignaciones de roles son válidas. Para obtener más información, consulte Ejecutar o restablecer indexadores, habilidades o documentos.
Acceso a datos protegidos por red en cuentas de almacenamiento
Azure cuentas de almacenamiento pueden protegerse aún más mediante firewalls y redes virtuales. Si desea indexar el contenido de una cuenta de almacenamiento protegida mediante un firewall o una red virtual, consulte Conexiones del indexador a Azure Storage como un servicio de confianza.
Consulte también
- Azure indexador de blobs
- Indexador ADLS Gen2
- indexador de tabla Azure
- Ejemplo de C#: Index Data Lake Gen2 mediante Microsoft Entra ID (GitHub)