Compartir a través de


Use una identidad administrada para la autenticación de SQL Database en Azure HDInsight

HDInsight agregó la opción Identidad administrada para autenticar bases de datos SQL dentro de sus ofertas de clúster y proporcionar un mecanismo de autenticación más seguro.

En este artículo se describe el proceso de uso de la opción Identidad administrada (MSI) para la autenticación de SQL Database al crear un clúster de HDInsight.

La opción Identidad administrada (MI) está disponible para las siguientes bases de datos:

Bases de datos Host en nombre de la base de datos (HoBo) Base de datos Bring Your Own (BYO)
Ambari
Hive
Oozie
Ranger (ESP)

Nota:

  • La identidad administrada (MI) solo está disponible actualmente en regiones públicas.
  • La opción MI no está habilitada de forma predeterminada. Para habilitarlo, envíe una incidencia de soporte técnico con los detalles de su suscripción y región.

Importante

  • Se recomienda no actualizar la identidad administrada después de la recreación del clúster, ya que puede interrumpir la operación del clúster.
  • Al volver a crear una MSI con el mismo nombre, los usuarios deben volver a crear los roles de usuario y reasignar contenido, ya que el nuevo MSI tendrá identificadores de cliente y objetos diferentes, incluso si el nombre permanece sin cambios.

Pasos para usar la identidad administrada durante la creación del clúster en Azure Portal

  1. Durante la creación del clúster, vaya a la sección Almacenamiento y seleccione la base de datos SQL para Ambari/Hive/Oozie. Elija Identidad administrada como método de autenticación.

    Captura de pantalla que muestra la pestaña básica.

  2. Seleccione la identidad administrada para autenticarse con SQL Database.

    Captura de pantalla que muestra la pestaña almacenamiento.

  3. Cree un usuario independiente con la identidad administrada en la base de datos SQL correspondiente.

    Siga estos pasos en el editor de consultas de base de datos de Azure SQL para crear un usuario de base de datos y concederle permisos de lectura y escritura. Realice estos pasos para cada instancia de SQL Database que va a usar para distintos servicios, como Ambari, Hive o Oozie.

    Nota:

    El nombre de usuario debe contener el nombre MSI original extendido por un sufijo definido por el usuario. Como procedimiento recomendado, el sufijo puede incluir una parte inicial de su identificador de objeto. El identificador de objeto de la identidad administrada se puede obtener desde el portal en la página del portal de identidad administrada.

    Por ejemplo:

    • Nombre de MSI: contosoMSI
    • Id. de objeto: aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
    • user_name podría ser contosoMSI-2ba6c
    CREATE USER {user_name} FROM EXTERNAL PROVIDER WITH OBJECT_ID={object id of cluster managed identity};   
    
    ALTER ROLE db_datareader ADD MEMBER {user_name};   
    ALTER ROLE db_ddladmin ADD MEMBER {user_name};   
    ALTER ROLE db_datawriter ADD MEMBER {user_name};   
    

    Nota:

    Si los roles db_executor, db_view_def y db_view_state ya están definidos en la base de datos, no es necesario continuar con el paso posterior.

    CREATE ROLE db_executor;   
    GRANT EXECUTE TO db_executor;   
    ALTER ROLE db_executor ADD MEMBER {user_name};   
    
    CREATE ROLE db_view_def;   
    GRANT VIEW DEFINITION TO db_view_def;   
    ALTER ROLE db_view_def ADD MEMBER {user_name};   
    CREATE ROLE db_view_db_state;  
    
    GRANT VIEW DATABASE STATE TO db_view_db_state;   
    
    ALTER ROLE db_view_def ADD MEMBER {user_name};  
    
  4. Después de escribir los detalles necesarios, continúe con la creación del clúster en el portal.