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.
Azure Stream Analytics admite autenticación de identidad administrada para destinos de salida en Azure SQL Database y Azure Synapse Analytics. Las identidades administradas eliminan las limitaciones de los métodos de autenticación basados en el usuario, como la necesidad de volver a autenticarse debido a cambios de contraseña o expiraciones de tokens de usuario que se producen cada 90 días. Cuando se elimina la necesidad de autenticarse manualmente, las implementaciones de Stream Analytics se pueden automatizar completamente.
Una identidad administrada es una aplicación administrada registrada en Microsoft Entra ID que representa un trabajo de Stream Analytics determinado. La aplicación administrada se usa para la autenticación en un recurso de destino. En este artículo se muestra cómo habilitar la identidad administrada para una base de datos SQL de Azure o las salidas de Azure Synapse Analytics de un trabajo de Stream Analytics a través del portal de Azure.
Overview
En este artículo se muestran los pasos necesarios para conectar la tarea de Stream Analytics a la base de datos SQL de Azure o al grupo de SQL de Azure Synapse Analytics utilizando el modo de autenticación de Identidad Administrada.
Primero se crea una identidad administrada asignada por el sistema para el trabajo de Stream Analytics. Esta es la identidad de tu trabajo en Microsoft Entra ID.
Agregue un administrador de Active Directory al área de trabajo de SQL Server o Synapse, lo que permite la autenticación de Microsoft Entra ID (identidad administrada) para ese recurso.
A continuación, cree un usuario independiente que represente la identidad del trabajo de Stream Analytics en la base de datos. Siempre que el trabajo de Stream Analytics interactúe con la base de datos SQL o el recurso de base de datos sql de Synapse, esta es la identidad a la que hará referencia para comprobar qué permisos tiene el trabajo de Stream Analytics.
Conceda permisos a su trabajo de Stream Analytics para acceder a su base de datos SQL o a los grupos de Synapse SQL.
Por último, agregue Azure SQL Database/Azure Synapse Analytics como la salida en la tarea de Stream Analytics.
Prerequisites
Para usar esta característica, necesita:
Un trabajo de Azure Stream Analytics.
Un recurso de Azure SQL Database.
Crea una identidad administrada
En primer lugar, cree una identidad administrada para el trabajo de Azure Stream Analytics.
En el portal Azure, abra el trabajo de Azure Stream Analytics.
En el menú de navegación izquierdo, seleccione Identidad administrada en Configurar. A continuación, active la casilla situada junto a Usar la identidad administrada asignada por el sistema y seleccione Guardar.
Microsoft Entra ID crea un principal de servicio para la identidad de la tarea de Stream Analytics. Azure administra el ciclo de vida de la identidad recién creada. Al eliminar el trabajo de Stream Analytics, Azure elimina automáticamente la identidad asociada (es decir, la entidad de servicio).
También puede cambiar a identidades administradas asignadas por el usuario.
Al guardar la configuración, el identificador de objeto (OID) del principal de servicio aparece como ID de Principal, como se muestra en la sección siguiente.
La entidad de servicio tiene el mismo nombre que la tarea de Stream Analytics. Por ejemplo, si el nombre del trabajo es MyASAJob, el nombre de la entidad de servicio también es MyASAJob.
Selección de un administrador de Active Directory
Después de crear una identidad administrada, seleccione un administrador de Active Directory.
Vaya al recurso Database SQL de Azure o grupo SQL de Azure Synapse Analytics. Seleccione la SQL Server o el área de trabajo de Synapse en la que se encuentra el recurso. Puede encontrar el vínculo a estos recursos en la página de información general del recurso junto a Nombre del servidor o Nombre del área de trabajo.
Seleccione Active Directory Admin o SQL Active Directory Admin en Settings, para SQL Server y área de trabajo de Synapse, respectivamente. A continuación, seleccione Establecer administrador.
En la página administrador de Active Directory, busque un usuario o grupo para que sea administrador del SQL Server y seleccione Select. Este usuario puede crear el usuario de base de datos independiente en la sección siguiente.
En la página de administración de Active Directory se muestran todos los miembros y grupos de la Active Directory. No se pueden seleccionar usuarios o grupos desactivados, ya que no se admiten como administradores de Microsoft Entra. Consulte la lista de administradores admitidos en la sección de características y limitaciones de Microsoft Entra dentro del apartado Usar la autenticación de Microsoft Entra con SQL Database o Azure Synapse.
Seleccione Guardar en la página Active Directory admin. El proceso para cambiar el administrador tarda unos minutos.
Creación de un usuario de base de datos independiente
A continuación, cree un usuario de base de datos independiente en la base de datos Azure SQL o Azure Synapse asignada a la identidad de Microsoft Entra. El usuario contenido de la base de datos no tiene acceso para la base de datos principal, pero está asignado a una identidad en el directorio vinculado a la base de datos. La identidad de Microsoft Entra puede ser una cuenta de usuario individual o un grupo. En este caso, quiere crear un usuario de base de datos independiente para el trabajo de Stream Analytics.
Para más información, consulte Autenticación universal con SQL Database y Azure Synapse Analytics (compatibilidad de SSMS con MFA).
Conéctese a la base de datos de Azure SQL o Azure Synapse mediante SQL Server Management Studio. El nombre de usuario es un usuario de Microsoft Entra con el permiso ALTER ANY USER. El administrador que configuraste en el SQL Server es un ejemplo. Utilice Microsoft Entra ID – Universal con autenticación MFA.
El nombre del servidor
<SQL Server name>.database.windows.netpuede ser diferente en regiones diferentes. Por ejemplo, la región de China debe usar<SQL Server name>.database.chinacloudapi.cn.Puede especificar una base de datos de Azure SQL o Azure Synapse específica; para ello, vaya a Options > Propiedades de conexión > Conectarse a la base de datos.
Al conectarse por primera vez, es posible que encuentre la ventana siguiente:
- Si es así, vaya al recurso SQL Server o área de trabajo de Synapse en el portal de Azure. En la sección Seguridad, abra la página Firewalls y red virtual o Firewalls.
- Agregue una nueva regla con cualquier nombre de regla.
- Use la dirección IP desde la ventana Nueva regla de firewall para la dirección IP de inicio.
- Use la dirección IP de destino desde la ventana Nueva regla de firewall para IP final.
- Seleccione Guardar e intente conectarse desde SQL Server Management Studio de nuevo.
Una vez conectado, cree el usuario de base de datos independiente. El siguiente comando SQL crea un usuario de base de datos independiente que tiene el mismo nombre que el trabajo de Stream Analytics. Asegúrese de incluir los corchetes alrededor del ASA_JOB_NAME. Use la siguiente sintaxis de T-SQL y ejecute la consulta.
CREATE USER [ASA_JOB_NAME] FROM EXTERNAL PROVIDER;Para verificar si agregó correctamente el usuario de base de datos contenida, ejecute el siguiente comando en SSMS bajo la base de datos correspondiente y compruebe si su ASA_JOB_NAME está en la columna "name".
SELECT * FROM <SQL_DB_NAME>.sys.database_principals WHERE type_desc = 'EXTERNAL_USER'Para que Microsoft Entra ID verifique si el trabajo de Stream Analytics tiene acceso a la base de datos SQL, debe concederle a Microsoft Entra el permiso para comunicarse con la base de datos. Para ello, vaya a la página Firewalls y red virtual o Firewalls de nuevo en el portal de Azure, y habilite Permitir que los servicios y recursos de Azure accedan a este servidor o espacio de trabajo.
Concesión de permisos de trabajo de Stream Analytics
Después de crear un usuario de base de datos independiente y conceder acceso a los servicios de Azure en el portal, como se describe en la sección anterior, el trabajo de Stream Analytics tiene permiso de Identidad Administrada para CONNECT al recurso de base de datos de Azure SQL mediante la Identidad Administrada. Conceda los permisos SELECT e INSERT al trabajo de Stream Analytics, ya que el trabajo necesita estos permisos más adelante en el flujo de trabajo de Stream Analytics. El permiso SELECT permite al trabajo probar su conexión a la tabla de la base de datos Azure SQL. El permiso INSERT permite probar consultas de Stream Analytics de un extremo a otro una vez que configure una entrada y la salida de la base de datos de Azure SQL.
Puede conceder esos permisos al trabajo de Stream Analytics mediante SQL Server Management Studio. Para obtener más información, consulte la referencia GRANT (Transact-SQL).
Para conceder permiso solo a una determinada tabla o objeto de la base de datos, use la siguiente sintaxis T-SQL y ejecute la consulta.
GRANT CONNECT TO ASA_JOB_NAME;
GRANT SELECT, INSERT ON OBJECT::TABLE_NAME TO ASA_JOB_NAME;
También puede hacer clic con el botón derecho en la base de datos de Azure SQL o Azure Synapse en SQL Server Management Studio y seleccionar Properties > permissions. En el menú de permisos, puede ver el trabajo de Stream Analytics que agregó anteriormente y puede conceder o denegar manualmente permisos según se ajuste.
Para revisar todos los permisos que ha añadido al usuario ASA_JOB_NAME, ejecute el siguiente comando en SSMS en la base de datos correspondiente:
SELECT dbprin.name, dbprin.type_desc, dbperm.permission_name, dbperm.state_desc, dbperm.class_desc, object_name(dbperm.major_id)
FROM sys.database_principals dbprin
LEFT JOIN sys.database_permissions dbperm
ON dbperm.grantee_principal_id = dbprin.principal_id
WHERE dbprin.name = '<ASA_JOB_NAME>'
Crear una salida de Azure SQL Database o Azure Synapse
Note
Al usar SQL Managed Instance (MI) como entrada de referencia, debe configurar un punto de conexión público en el SQL Managed Instance. Debe especificar el nombre de dominio completo con el puerto al configurar la propiedad de base de datos . Por ejemplo: sampleserver.public.database.windows.net,3342.
Después de configurar la identidad administrada, está listo para agregar una salida de Azure SQL Database o Azure Synapse al trabajo de Stream Analytics.
Asegúrese de crear una tabla en sql Database con el esquema de salida adecuado. Debe proporcionar el nombre de esta tabla al agregar la salida de SQL Database al trabajo de Stream Analytics. Además, asegúrese de que el trabajo tiene permisos SELECT e INSERT para probar la conexión y ejecutar consultas de Stream Analytics. Si aún no lo ha hecho, consulte la sección Concesión de permisos de trabajo de Stream Analytics .
Vuelva al trabajo de Stream Analytics y vaya a la página Salidas en Topología de trabajo.
Seleccione Agregar > SQL Database. En la ventana de propiedades de salida del receptor de salida de SQL Database, seleccione Identidad administrada en la lista desplegable Modo de autenticación.
Rellene el resto de las propiedades. Para más información sobre cómo crear una salida de SQL Database, consulte Creación de una salida de SQL Database con Stream Analytics. Cuando termine, seleccione Save (Guardar).
Después de seleccionar Guardar, se desencadena automáticamente una prueba de conexión al recurso. Una vez que se complete correctamente la prueba, configuró el trabajo de Stream Analytics para conectarse a su base de datos Azure SQL Database o Synapse SQL Database mediante la autenticación por identidad administrada.
Pasos adicionales para los datos de referencia de SQL
Al usar datos de referencia de SQL, Azure Stream Analytics requiere que configure la cuenta de almacenamiento del trabajo. El trabajo usa esta cuenta de almacenamiento para almacenar contenido relacionado con el trabajo de Stream Analytics, como instantáneas de datos de referencia de SQL.
Siga estos pasos para configurar una cuenta de almacenamiento asociada:
En la página tarea de Stream Analytics, en Configurar en el menú de la izquierda, seleccione Configuración de cuenta de almacenamiento.
En la página Trabajo de Stream Analytics, seleccione Configuración de la cuenta de almacenamiento en Configurar en el menú de la izquierda.
En la página Configuración de la cuenta de almacenamiento , seleccione Agregar cuenta de almacenamiento.
Siga las instrucciones para configurar la configuración de la cuenta de almacenamiento.
Importante
- Para autenticarse mediante un cadena de conexión, debe deshabilitar la configuración del firewall de la cuenta de almacenamiento.
- Para autenticarse mediante identidad administrada, debe agregar el trabajo de Stream Analytics a la lista de control de acceso de la cuenta de almacenamiento para el rol Colaborador de datos de Storage Blob y colaborador de datos de tabla de almacenamiento. Si no proporciona acceso al trabajo, el trabajo no puede realizar ninguna operación. Para obtener más información sobre cómo conceder acceso, consulte Uso de Azure RBAC para asignar un acceso de identidad administrada a otro recurso.
Pasos adicionales con la identidad administrada asignada por el usuario
Repita los pasos si seleccionó la identidad administrada asignada por el usuario para conectar ASA a Synapse:
- Cree un usuario de base de datos independiente. Sustituya ASA_Job_Name por Identidad Administrada Asignada por el Usuario. Consulte el ejemplo siguiente.
CREATE USER [User-Assigned Managed Identity] FROM EXTERNAL PROVIDER; - Conceda permisos a la Identidad Administrada Asignada por el Usuario. Reemplace ASA_Job_Name por Identidad Administrada Asignada por el Usuario.
Para obtener más información, consulte las secciones anteriores.
Eliminación de la identidad administrada
Elimine la identidad administrada que creó para un trabajo de Stream Analytics solo cuando elimine el trabajo. No se puede eliminar la identidad administrada sin eliminar el trabajo. Si ya no desea usar la identidad administrada, cambie el método de autenticación de la salida. La identidad administrada continúa existiendo hasta que se elimina el trabajo y se usa si decide volver a usar la autenticación de identidad administrada.
Pasos siguientes
- Comprender los resultados de Azure Stream Analytics
- Salida de resultados de Azure Stream Analytics a la base de datos de Azure SQL
- Incremento del rendimiento de Azure SQL Database desde Azure Stream Analytics
- Uso de datos de referencia de una Base de Datos SQL para un trabajo de Azure Stream Analytics
- Actualización o combinación de registros en Azure SQL Database con Azure Functions
- Inicio rápido: Creación de un trabajo de Stream Analytics mediante Azure Portal