Habilitación de la autenticación de Azure Active Directory Domain Services en Azure Files

Azure Files admite la autenticación basada en identidades para recursos compartidos de archivos de Windows a través del Bloque de mensajes del servidor (SMB) con el protocolo de autenticación Kerberos mediante los métodos siguientes:

  • Active Directory Domain Services (AD DS) local
  • Azure Active Directory Domain Services (Azure AD DS)
  • Kerberos de Azure Active Directory (Azure AD) para identidades de usuario híbridas

Este artículo se centra en la habilitación y configuración de Azure AD DS para la autenticación basada en identidades con recursos compartidos de archivos de Azure. En este escenario de autenticación, las credenciales de Azure AD y las credenciales de Azure AD DS son las mismas y se pueden usar indistintamente.

Se recomienda encarecidamente consultar la sección Funcionamiento para seleccionar el origen de AD adecuado para la autenticación. La instalación difiere en función del origen de AD que se elija.

Si no está familiarizado con Azure Files, se recomienda que lea la guía de planeamiento antes de este artículo.

Nota:

Azure Files admite la autenticación de Kerberos con Azure AD DS mediante el cifrado RC4-HMAC y AES-256. Se recomienda usar AES-256.

Azure Files admite la autenticación de Azure AD DS con sincronización completa o parcial (con ámbito) con Azure AD. En el caso de los entornos con sincronización con ámbito presente, los administradores deben tener en cuenta que Azure Files solo respeta las asignaciones de roles de RBAC de Azure que se conceden a las entidades de seguridad que están sincronizadas. El servicio Azure Files omitirá las asignaciones de roles concedidas a identidades que no se sincronicen de Azure AD a Azure AD DS.

Se aplica a

Tipo de recurso compartido de archivos SMB NFS
Recursos compartidos de archivos Estándar (GPv2), LRS/ZRS Sí No
Recursos compartidos de archivos Estándar (GPv2), GRS/GZRS Sí No
Recursos compartidos de archivos Premium (FileStorage), LRS/ZRS Sí No

Prerrequisitos

Antes de habilitar Azure AD DS con SMB para los recursos compartidos de archivos de Azure, asegúrese de que ha completado los requisitos previos siguientes:

  1. Seleccione o cree un inquilino de Azure AD.

    Puede usar un inquilino nuevo o uno existente. El inquilino y el recurso compartido de archivos a los que desea acceder deben asociarse con la misma suscripción.

    Para crear un nuevo inquilino de Azure AD, puede agregar un inquilino de Azure AD y una suscripción de Azure AD. Si ya tiene un inquilino de Azure AD, pero desea crear otro para usarlo con los recursos compartido de archivos de Azure, consulte Creación de un inquilino de Azure Active Directory.

  2. Habilite Azure AD Domain Services en el inquilino de Azure AD.

    Para admitir la autenticación con las credenciales de Azure AD, debe habilitar Azure AD DS para su inquilino de Azure AD. Si no es el administrador del inquilino de Azure AD, póngase en contacto con el administrador y siga las instrucciones paso a paso para habilitar Azure Active Directory Domain Services mediante Azure Portal.

    Una implementación de Azure AD DS suele tardar unos 15 minutos en completarse. Confirme que el estado de mantenimiento de Azure AD muestra En ejecución, con la sincronización de hash de contraseña habilitada, antes de continuar con el paso siguiente.

  3. Unión al dominio de una máquina virtual de Azure con Azure AD DS.

    Para acceder a un recurso compartido de archivos de Azure mediante las credenciales de Azure AD desde una VM, esta debe unirse a un dominio con Azure AD DS. Para más información sobre cómo unir a un dominio una máquina virtual, consulte Unión de una máquina virtual de Windows Server a un dominio administrado. La autenticación de Azure AD DS a través de SMB con recursos compartido de archivos de Azure solo se admite en máquinas virtuales de Azure que se ejecutan en versiones del sistema operativo posteriores a Windows 7 o Windows Server 2008 R2.

    Nota

    Las VM no unidas a un dominio pueden acceder a los recursos compartidos de archivos de Azure mediante la autenticación de Azure AD DS solo si la VM tiene línea de visión a los controladores de dominio para Azure AD DS. Normalmente, esto requiere una VPN de sitio a sitio o de punto a sitio.

  4. Seleccione o cree un recurso compartido de archivos.

    Seleccione un recurso compartido de archivos nuevo o existente que esté asociado con la misma suscripción que el inquilino de Azure AD. Para información acerca de cómo crear un nuevo recurso compartido de archivos, consulte Creación de un recurso compartido de archivos en Azure Files. Para obtener un rendimiento óptimo, se recomienda que el recurso compartido de archivos esté en la misma región que la máquina virtual desde la que vaya a acceder al recurso compartido.

  5. Compruebe la conectividad de Azure Files; para ello, monte los recursos compartidos de archivos de Azure con la clave de su cuenta de almacenamiento.

    Para comprobar que el recurso compartido de archivos y de la máquina virtual están configurados correctamente, intente montar el recurso compartido de archivos con la clave de la cuenta de almacenamiento. Para más información, consulte Montaje de un recurso compartido de archivos de Azure y acceso al recurso compartido en Windows.

Disponibilidad regional

La autenticación de Azure Files con Azure AD DS está disponible en todas las regiones públicas, de Azure Government y de China.

Información general del flujo de trabajo

Antes de habilitar la autenticación de Azure AD DS con SMB para los recursos compartidos de archivos de Azure, compruebe que los entornos de Azure Storage y Azure AD se hayan configurado correctamente. Se recomienda que revise los requisitos previos para asegurarse de que ha completado todos los pasos necesarios.

Siga estos pasos para conceder acceso a los recursos de Azure Files con las credenciales de Azure AD:

  1. Habilite la autenticación de Azure AD DS a través de SMB en la cuenta de almacenamiento a fin de registrarla con la implementación de Azure AD DS asociada.
  2. Asigne permisos de nivel de recurso compartido a una identidad de Azure AD (usuario, grupo o entidad de servicio).
  3. Conéctese al recurso compartido de archivos de Azure mediante una clave de cuenta de almacenamiento y configure listas de control de acceso (ACL) de Windows para los directorios y los archivos.
  4. Monte un recurso compartido de archivos de Azure desde una máquina virtual unida al dominio.

En el diagrama siguiente se ilustra el flujo de trabajo de un extremo a otro para habilitar la autenticación de Azure AD DS a través de SMB para Azure Files.

Diagrama que muestra Azure AD a través de SMB para el flujo de trabajo de Azure Files

Habilitación de la autenticación de Azure AD DS para la cuenta

Para habilitar la autenticación de Azure AD DS a través de SMB para Azure Files, puede establecer una propiedad en las cuentas de almacenamiento mediante Azure Portal, Azure PowerShell o la CLI de Azure. Al establecer esta propiedad "une a un dominio" implícitamente la cuenta de almacenamiento con la implementación de Azure AD DS asociada. La autenticación de Azure AD DS a través de SMB se habilita entonces para todos los recursos compartidos de archivos nuevos y existentes de la cuenta de almacenamiento.

Tenga en cuenta que solo puede habilitar la autenticación de Azure AD DS con SMB después de haber implementado correctamente Azure AD DS en el inquilino de Azure AD. Para más información, consulte la sección los requisitos previos.

Para habilitar la autenticación de Azure AD DS a través de SMB mediante Azure Portal, siga estos pasos:

  1. En Azure Portal, vaya a la cuenta de almacenamiento existente o cree una.

  2. En la sección Recursos compartidos, seleccione Active Directory: No configurado.

    Captura de pantalla del panel Recursos compartidos en su cuenta de almacenamiento, Active Directory aparece resaltado.

  3. Seleccione Active Directory Domain Services y luego marque la casilla para habilitar la característica.

  4. Seleccione Guardar.

    Captura de pantalla del panel Active Directory en la que Azure Active Directory Domain Services está habilitado.

De forma predeterminada, la autenticación de Azure AD DS usa el cifrado Kerberos RC4. Se recomienda configurarlo para usar, en su lugar, el cifrado AES-256 de Kerberos. Para ello, siga estas instrucciones.

La acción requiere ejecutar una operación en el dominio de Active Directory administrado por Azure AD DS para acceder a un controlador de dominio para solicitar un cambio de propiedad en el objeto de dominio. Los siguientes cmdlets son cmdlets de PowerShell de Windows Server Active Directory, no de Azure PowerShell. Por este motivo, estos comandos de PowerShell deben ejecutarse en una máquina cliente unida a un dominio de Azure AD DS.

Importante

Los cmdlets de PowerShell de Windows Server Active Directory de esta sección deben ejecutarse en Windows PowerShell 5.1 desde una máquina cliente unida a un dominio de Azure AD DS. PowerShell 7.x y Azure Cloud Shell no funcionarán en este escenario.

Inicie sesión en la máquina de cliente unida a un dominio como usuario de Azure AD DS con los permisos necesarios. Debe tener acceso de escritura al atributo msDS-SupportedEncryptionTypes del objeto de dominio. Por lo general, los miembros del grupo Administradores de controlador de dominio de AAD tendrán los permisos necesarios. Abra una sesión normal (sin privilegios elevados) de PowerShell y ejecute los comandos siguientes.

# 1. Find the service account in your managed domain that represents the storage account.

$storageAccountName= “<InsertStorageAccountNameHere>”
$searchFilter = "Name -like '*{0}*'" -f $storageAccountName
$userObject = Get-ADUser -filter $searchFilter

if ($userObject -eq $null)
{
   Write-Error "Cannot find AD object for storage account:$storageAccountName" -ErrorAction Stop
}

# 2. Set the KerberosEncryptionType of the object

Set-ADUser $userObject -KerberosEncryptionType AES256

# 3. Validate that the object now has the expected (AES256) encryption type.

Get-ADUser $userObject -properties KerberosEncryptionType

Importante

Si anteriormente usaba el cifrado RC4 y actualizaba la cuenta de almacenamiento para usar AES-256, debe ejecutar klist purge en el cliente y, a continuación, volver a montar el recurso compartido de archivos para obtener nuevos vales Kerberos con AES-256.

Asignación de permisos de nivel de recurso compartido

Para acceder a los recursos de Azure Files con la autenticación basada en identidades, una identidad (usuario, grupo o entidad de servicio) debe tener los permisos necesarios en el nivel de recurso compartido. Este proceso es similar a especificar los permisos de recurso compartido de Windows, donde se especifica el tipo de acceso que tiene un usuario determinado a un recurso compartido de archivos. Las instrucciones de esta sección muestran cómo asignar permisos de lectura, escritura o eliminación para un recurso compartido de archivos a una identidad. Se recomienda asignar permisos declarando acciones y acciones de datos explícitamente en lugar de usar el carácter comodín (*).

La mayoría de los usuarios deben asignar permisos de nivel de recurso compartido a usuarios o grupos específicos de Azure AD y, después, configurar listas de control de acceso de Windows para el control de acceso pormenorizado en el nivel de directorio y archivo. Sin embargo, como alternativa, puede establecer un permiso de nivel de recurso compartido predeterminado para permitir el acceso de colaborador, colaborador con privilegios elevados o lector a todas las identidades autenticadas.

Se han incorporado tres roles integrados de Azure para conceder permisos de nivel de recurso compartido a los usuarios:

  • El lector de recursos compartidos de SMB para los datos del archivo de almacenamiento permite el acceso de lectura en los recursos compartidos de archivos de Azure Storage a través de SMB.
  • El colaborador de recursos compartidos de SMB para los datos del archivo de almacenamiento permite el acceso de lectura, escritura y eliminación en los recursos compartidos de archivos de Azure Storage a través de SMB.
  • El rol Colaborador con privilegios elevados de recursos compartidos de SMB de datos de archivos de almacenamiento permite el acceso de lectura, escritura, eliminación y modificación de ACL de Windows en los recursos compartidos de archivos de Azure mediante SMB.

Importante

El control administrativo total de un recurso compartido de archivos, incluida la capacidad de tomar posición de un archivo, requiere usar la clave de la cuenta de almacenamiento. El control administrativo no es compatible con las credenciales de Azure AD.

Puede usar Azure Portal, PowerShell o la CLI de Azure para asignar los roles integrados a la identidad de Azure AD de un usuario a fin de conceder permisos de nivel de recurso compartido. Tenga en cuenta que la asignación de roles de Azure de nivel de recurso compartido puede tardar un tiempo en aplicarse. La recomendación general es usar el permiso de nivel de recurso compartido para la administración del acceso de alto nivel para un grupo de AD que represente un grupo de usuarios e identidades y, después, aprovechar las listas de control de acceso de Windows para el control de acceso pormenorizado en el nivel de directorio o archivo.

Asignación de un rol de Azure a una identidad de Azure AD

Importante

Asigne permisos al declarar explícitamente acciones y acciones de datos en lugar de usar un carácter comodín (*). Si la definición de rol personalizada de una acción de datos contiene un carácter comodín, se concede acceso a todas las identidades asignadas a ese rol para todas las posibles acciones de datos. Esto significa que a todas esas identidades también se les concederá cualquier nueva acción de datos agregada a la plataforma. El acceso adicional y los permisos concedidos mediante nuevas acciones o acciones de datos pueden ser comportamientos no deseados para los clientes que usan un carácter comodín.

Para asignar un rol de Azure a una identidad de Azure AD mediante Azure Portal, siga estos pasos:

  1. En Azure Portal, vaya al recurso compartido de archivos o cree un recurso compartido de archivos.
  2. Seleccione Access Control (IAM) .
  3. Seleccione Agregar una asignación de roles.
  4. En la hoja Agregar asignación de roles, seleccione el rol integrado adecuado (lector o colaborador de recursos compartidos de SMB para datos del archivo de almacenamiento) en la lista desplegable Rol. Mantenga la opción Asignar acceso a en la configuración predeterminada: Usuario, grupo o entidad de servicio de Azure AD. Seleccione la identidad de Azure AD de destino por nombre o dirección de correo electrónico.
  5. Seleccione Revisar y asignar para completar la operación de asignación de roles.

Configuración de ACL de Windows

Después de asignar los permisos de los recursos compartidos con RBAC, puede asignar las ACL de Windows, también conocidas como permisos NTFS, a las raíces, los directorios o los archivos. Considere los permisos de nivel de recurso compartido como el equipo selector de alto nivel que determina si un usuario puede acceder al recurso compartido, mientras que las listas de control de acceso de Windows actúan en un nivel más pormenorizado para determinar las operaciones que puede hacer un usuario en el nivel de directorio o archivo.

Azure Files admite el conjunto completo de permisos básicos y avanzados. Las listas de control de acceso de Windows se pueden ver y configurar en los directorios y los archivos de un recurso compartido de archivos de Azure; para ello, monte el recurso compartido y utilice el Explorador de archivos de Windows o ejecute el comando icacls o Set-ACL de Windows.

Se admiten los siguientes conjuntos de permisos en el directorio raíz de un recurso compartido de archivos:

  • BUILTIN\Administrators:(OI)(CI)(F)
  • NT AUTHORITY\SYSTEM:(OI)(CI)(F)
  • BUILTIN\Users:(RX)
  • BUILTIN\Users:(OI)(CI)(IO)(GR,GE)
  • NT AUTHORITY\Authenticated Users:(OI)(CI)(M)
  • NT AUTHORITY\SYSTEM:(F)
  • CREATOR OWNER:(OI)(CI)(IO)(F)

Para más información, consulte Configuración de permisos de nivel de directorio y de archivo en SMB.

Montaje del recurso compartido de archivos mediante la clave de la cuenta de almacenamiento

Antes de configurar las ACL de Windows, primero debe montar el recurso compartido de archivos en la máquina virtual unida a un dominio mediante la clave de la cuenta de almacenamiento. Para ello, inicie sesión en la máquina virtual unida a un dominio como usuario de Azure AD, abra un símbolo del sistema de Windows y ejecute el comando siguiente. Recuerde reemplazar <YourStorageAccountName>, <FileShareName> y <YourStorageAccountKey> por sus valores propios. Si Z ya está en uso, reemplácelo por una letra de unidad disponible. Para encontrar la clave de la cuenta de almacenamiento en Azure Portal, vaya a la cuenta de almacenamiento y seleccione Seguridad y redes>Claves de acceso, o bien puede usar el cmdlet Get-AzStorageAccountKey de PowerShell.

Es importante que use el comando net use de Windows para montar el recurso compartido en esta fase, no PowerShell. Si usa PowerShell para montar el recurso compartido, este no será visible para el Explorador de archivos de Windows o cmd.exe, y no podrá configurar las ACL de Windows.

Nota

Es posible que vea la ACL de control total ya aplicada a un rol. Normalmente, esto ya ofrece la posibilidad de asignar permisos. Sin embargo, dado que hay comprobaciones de acceso en dos niveles (el nivel de recurso compartido y el nivel de archivo o directorio), esto está restringido. Solo los usuarios que tienen el rol Colaborador con privilegios elevados de SMB y crean un archivo o directorio pueden asignar permisos en esos archivos o directorios nuevos sin utilizar la clave de cuenta de almacenamiento. El resto de la asignación de permisos de archivo o directorio requiere primero conectarse al recurso compartido con la clave de cuenta de almacenamiento.

net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName> /user:localhost\<YourStorageAccountName> <YourStorageAccountKey>

Configuración de ACL de Windows con el Explorador de archivos de Windows

Una vez que monta el recurso compartido de archivos de Azure, debe configurar las ACL de Windows. Puede hacerlo en el Explorador de archivos de Windows o con icacls.

Siga estos pasos para utilizar el Explorador de archivos de Windows a fin de conceder permisos completos para todos los directorios y archivos en el recurso compartido de archivos, incluido el directorio raíz.

  1. Abra el Explorador de archivos de Windows y haga clic con el botón derecho en el archivo o directorio, y seleccione Propiedades.
  2. Seleccione la pestaña Seguridad .
  3. Seleccione Editar para cambiar los permisos.
  4. Puede cambiar los permisos de los usuarios existentes o seleccionar Agregar para conceder permisos a usuarios nuevos.
  5. En la ventana del símbolo del sistema para agregar nuevos usuarios, escriba el nombre de usuario de destino al que desea conceder el permiso en el cuadro Escriba los nombres de objeto que desea seleccionar y seleccione Comprobar nombres para buscar el nombre UPN completo del usuario de destino.
  6. Seleccione Aceptar.
  7. En la pestaña Seguridad, seleccione todos los permisos que desea conceder al nuevo usuario.
  8. Seleccione Aplicar.

Configuración de ACL de Windows con icacls

Utilice el siguiente comando de Windows para conceder permisos completos para todos los directorios y archivos en el recurso compartido de archivos, incluido el directorio raíz. No olvide reemplazar los valores del marcador de posición en el ejemplo por los suyos propios.

icacls <mounted-drive-letter>: /grant <user-email>:(f)

Para más información sobre cómo usar icacls para establecer listas de control de acceso de Windows, así como sobre los distintos tipos de permisos admitidos,consulte la referencia de línea de comandos de icacls.

Montaje del recurso compartido de archivos desde una VM unida al dominio

El proceso siguiente comprueba que tanto el recurso compartido de archivos como los permisos de acceso se han configurado correctamente y que puede acceder a un recurso compartido de archivos de Azure desde una máquina virtual unida a un dominio. Tenga en cuenta que la asignación de roles de Azure de nivel de recurso compartido puede tardar un tiempo en estar en vigor.

Inicie sesión en la máquina virtual unida al dominio con la identidad de Azure AD a la que se concedieron permisos. Asegúrese de iniciar sesión con las credenciales de Azure AD. Si la unidad ya está montada con la clave de la cuenta de almacenamiento, deberá desconectar la unidad o volver a iniciar sesión.

Ejecute el script de PowerShell siguiente o use Azure Portal para montar de manera persistente el recurso compartido de archivos de Azure y asignarlo a la unidad Z: en Windows. Si Z ya está en uso, reemplácelo por una letra de unidad disponible. Como se autenticó, no será necesario que proporcione la clave de cuenta de almacenamiento. El script comprobará si esta cuenta de almacenamiento es accesible a través del puerto TCP 445, que es el puerto que SMB usa. Recuerde reemplazar <storage-account-name> y <file-share-name> por sus valores propios. Para más información, consulte Uso de un recurso compartido de archivos de Azure con Windows.

Monte siempre los recursos compartidos de archivos de Azure con file.core.windows.net, incluso si configura un punto de conexión privado para el recurso compartido. No se admite el uso de CNAME para el montaje del recurso compartido de archivos para la autenticación basada en identidades.

$connectTestResult = Test-NetConnection -ComputerName <storage-account-name>.file.core.windows.net -Port 445
if ($connectTestResult.TcpTestSucceeded) {
    cmd.exe /C "cmdkey /add:`"<storage-account-name>.file.core.windows.net`" /user:`"localhost\<storage-account-name>`""
    New-PSDrive -Name Z -PSProvider FileSystem -Root "\\<storage-account-name>.file.core.windows.net\<file-share-name>" -Persist
} else {
    Write-Error -Message "Unable to reach the Azure storage account via port 445. Check to make sure your organization or ISP is not blocking port 445, or use Azure P2S VPN, Azure S2S VPN, or Express Route to tunnel SMB traffic over a different port."
}

También puede usar el comando net-use desde una ventana del sistema de Windows para montar el recurso compartido de archivos. Recuerde reemplazar <YourStorageAccountName> y <FileShareName> por sus valores propios.

net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName>

Montaje del recurso compartido de archivos desde una máquina virtual no unida a un dominio o una máquina virtual unida a un dominio de AD diferente

Las VM no unidas a un dominio o las VM que se han unido a un dominio diferente al de la cuenta de almacenamiento pueden acceder a los recursos compartidos de archivos de Azure mediante la autenticación de Azure AD DS solo si la VM tiene línea de visión a los controladores de dominio para Azure AD DS, que están ubicados en Azure. Normalmente, esto requiere configurar una VPN de sitio a sitio o de punto a sitio para permitir esta conectividad. El usuario que accede al recurso compartido de archivos debe tener una identidad y credenciales (una identidad de Azure AD sincronizada desde Azure AD a Azure AD DS) en el dominio administrado de Azure AD DS.

Para montar un recurso compartido de archivos desde una máquina virtual no unida a un dominio, el usuario debe:

  • Proporcionar credenciales explícitas, como NOMBRE_DEL_DOMINIO\nombre_de_usuario, donde NOMBRE_DEL_DOMINIO es el dominio de Azure AD DS y el nombre de usuario es el de la identidad en Azure AD DS.
  • Use la notación username@domainFQDN, donde domainFQDN es el nombre de dominio completo.

El uso de uno de estos enfoques permitirá al cliente ponerse en contacto con el controlador de dominio en el dominio de Azure AD DS para solicitar y recibir vales de Kerberos.

Por ejemplo:

net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName> /user:<DOMAINNAME\username>

or

net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName> /user:<username@domainFQDN>

Pasos siguientes

Si desea conceder a otros usuarios acceso al recurso compartido de archivos, siga las instrucciones que aparecen en Asignación de permisos de nivel de recurso compartido y Configuración de ACL de Windows.

Para más información sobre la autenticación basada en identidad para Azure Files, consulte estos recursos: