Configurar la compatibilidad con la cuenta de servicio administrada de grupo (gMSA) para la grabación de sesiones
La grabación de sesiones admite cuentas de servicio administradas de grupo (gMSA) para simplificar la administración de nombres principales de servicio (SPN) para los servicios que se ejecutan en varios servidores. Esta función mejora la seguridad y simplifica la administración de las cuentas de servicio.
Paso 1: Crear una gMSA en el controlador de dominio
Nota:
Esta sección describe cómo crear una gMSA mediante el Administrador del servidor en el controlador de dominio. También puede ejecutar el siguiente script para lograr el mismo propósito:
Add-KdsRootKey -EffectiveImmediately Install-WindowsFeature -Name RSAT-AD-PowerShell NEW-ADGroup –name "gMSA" –path "DC=ajj,DC=test" -GroupCategory Security -groupscope Global Add-ADGroupMember "gMSA" -Members "Server-3$"(The dollar sign $ is must) New-ADServiceAccount IIS1SvC -DNSHostName IIS1Svc.ajj.test -PrincipalsAllowedToRetrieveManagedPassword gMSA <!--NeedCopy-->El parámetro Effective time permite que las claves se propaguen a todos los controladores de dominio (DC) antes de su uso. El uso de Add-KdsRootKey -EffectiveImmediately agrega una clave raíz al DC de destino para su uso inmediato por parte del servicio de distribución de claves (KDS). Sin embargo, otros controladores de dominio no podrán usar la clave raíz hasta que se complete la replicación.
-
En el controlador de dominio, abra el Centro de administración de Active Directory.

-
Seleccione el dominio y cree un grupo.

-
Asigne un nombre al grupo (usando gMSA como ejemplo). Establezca el Tipo de grupo en Seguridad y el Ámbito del grupo en Global. Agregue servidores miembros a él. Los servidores miembros incluyen las máquinas donde están instalados los servidores de grabación de sesiones y la base de datos de grabación de sesiones.

Por ejemplo, un miembro del grupo se agrega de la siguiente manera:

-
Después de agregar correctamente un grupo de seguridad, puede buscarlo mediante la búsqueda global en el Centro de administración de Active Directory. Puede ver los servidores miembros y recuerde reiniciarlos todos.

-
Cree una cuenta gMSA utilizando el cmdlet de PowerShell New-ADServiceAccount.
En el controlador de dominio, abra Windows PowerShell y ejecute el siguiente comando para crear una gMSA:
New-ADServiceAccount $serviceAccountName -DNSHostName $DNSHostName -PrincipalsAllowedToRetrieveManagedPassword $groupName <!--NeedCopy-->Donde,
-
$serviceAccountName especifica el nombre de la gMSA. Este artículo utiliza IIS1SvC como ejemplo.
-
$DNSHostName especifica el nombre de host DNS, en el formato de $serviceAccountName seguido del nombre de dominio del controlador de dominio.
-
$groupName especifica el grupo al que se le permite recuperar la contraseña administrada. Este artículo utiliza gMSA como ejemplo.
-
Paso 2: Instale la gMSA en cada servidor miembro
Debe instalar la gMSA en cada servidor que la vaya a utilizar.
-
Instale el módulo de Active Directory para Windows PowerShell, utilizando el Administrador del servidor o PowerShell con privilegios administrativos.
-
Para ver un ejemplo de cómo usar el Administrador del servidor:

-
Si utiliza PowerShell con privilegios administrativos, ejecute el siguiente comando:
Install-WindowsFeature -Name RSAT-AD-PowerShell <!--NeedCopy-->
-
-
Abra Windows PowerShell y ejecute un comando similar al siguiente para instalar la gMSA.
Install-ADServiceAccount IIS1SvC <!--NeedCopy-->Si encuentra un error de “Acceso denegado” similar al siguiente, asegúrese de que el servidor miembro actual se haya agregado a la lista de permitidos de la gMSA y que el servidor se haya reiniciado posteriormente.
Error de acceso denegado al instalar un gMSA(/es-es/session-recording/2509/media/access-denied-when-installing-a-mgsa.png)
-
verificar que ha instalado el gMSA correctamente ejecutando un comando similar al siguiente en PowerShell. Si el comando devuelve True, el gMSA se ha instalado correctamente.
Test-ADServiceAccount IIS1SvC <!--NeedCopy-->
Paso 3: Habilitar el gMSA para acceder a la base de datos de grabación de sesiones y a la base de datos de registro de grabación de sesiones
-
Cree un inicio de sesión para el gMSA. Utilice SQL Server Management Studio (SSMS) para conectarse a la instancia SQL de la base de datos de grabación de sesiones.
¡Crear un inicio de sesión para un gMSA
Asigne un nombre al nuevo inicio de sesión con el formato <nombre de dominio del controlador de dominio>\<nombre del gMSA>. Por ejemplo:
-
Habilite el gMSA para acceder a la base de datos de grabación de sesiones y a la base de datos de registro de grabación de sesiones.
-
Busque los nombres de la base de datos de grabación de sesiones y la base de datos de registro de grabación de sesiones a través del Registro. Por ejemplo, haga doble clic en las siguientes claves del Registro para obtener los datos de valor.
-
Conceda el permiso db_owner de la base de datos de grabación de sesiones y la base de datos de registro de grabación de sesiones al gMSA.
¡Conceder el permiso db_owner para la base de datos de grabación de sesiones
¡Conceder el permiso db_owner para la base de datos de registro de grabación de sesiones
Nota:
Si concede permisos de db_datareader y db_datawriter en lugar de permisos de db_owner, también debe conceder el permiso de ejecución en las bases de datos al gMSA. Por ejemplo:
use SR2311 grant execute to [name of the login created earlier] use SR2311log grant execute to [name of the login created earlier] <!--NeedCopy--> -
Paso 3: Habilitar el gMSA para acceder a los servidores de grabación de sesiones
Complete los siguientes pasos en cada servidor de grabación de sesiones:
-
Abra el Administrador de Internet Information Services (IIS) en la máquina donde está instalado el servidor de grabación de sesiones, establezca la identidad del grupo de aplicaciones en el gMSA y, a continuación, reinicie IIS.

Por ejemplo, las siguientes identidades de grupo de aplicaciones se han establecido en el gMSA

Nota:
Alternativamente, puede establecer la identidad del grupo de aplicaciones ejecutando un comando similar al siguiente mediante Windows PowerShell:
Import-Module WebAdministration -ErrorAction Stop $webapps = Get-ChildItem -Path IIS:\AppPools foreach ($webapp in $webapps) { if ($webapp.Name.Contains("SessionRecording")){ $Pool = "IIS:\AppPools\" + $webapp.Name Write-Host $Pool Set-ItemProperty -Path $Pool -Name processModel -Value @{userName="AJJ \IIS1SvC$";identitytype=3} } } <!--NeedCopy--> -
Abra el Editor del Registro en la máquina donde está instalado el servidor de grabación de sesiones y, a continuación, conceda permiso de lectura en el servidor de grabación de sesiones al gMSA.
-
Localice el tipo de objeto de cuenta de servicio.

-
Introduzca el nombre del gMSA.

-
Conceda permiso de lectura al gMSA.

Nota:
Alternativamente, puede usar un script similar al siguiente para conceder permiso de lectura en el servidor de Grabación de sesiones a una gMSA:
$RegistryKey = "HKLM:\SOFTWARE\Citrix\SmartAuditor" $NewAcl = Get-Acl -Path $RegistryKey $identity = "pahl6\IIS1SvC$" $RegistryKeyRights = "ReadPermissions" $type = "Allow" $RegistryKeyAccessRuleArgumentList = $identity, $RegistryKeyRights, $type $RegistryKeyAccessRule = New-Object System.Security.AccessControl.RegistryAccessRule -ArgumentList $RegistryKeyAccessRuleArgumentList $NewAcl.SetAccessRule($RegistryKeyAccessRule) Set-Acl -Path $RegistryKey -AclObject $NewAcl <!--NeedCopy--> -
-
Agregue la gMSA a la carpeta de almacenamiento de Grabación de sesiones y concédale permisos de lectura y escritura en la carpeta. Después de eso, habilite la herencia y seleccione Reemplazar todas las entradas de permisos de objetos secundarios con entradas de permisos heredables de este objeto.



Nota:
Alternativamente, puede usar un script similar al siguiente para conceder permisos de lectura y escritura en la carpeta de almacenamiento de Grabación de sesiones a una gMSA y para habilitar la herencia:
$path = "C:\SessionRecordings" $NewAcl = Get-Acl $path # Set properties $identity = "pahl6\IIS1SvC$" $fileSystemRights = "Modify" $type = "Allow" # Create new rule $fileSystemAccessRuleArgumentList = $identity, $fileSystemRights, $type $fileSystemAccessRule = New-Object -TypeName System.Security.AccessControl.FileSystemAccessRule $fileSystemAccessRuleArgumentList # Apply new rule $NewAcl.SetAccessRule($fileSystemAccessRule) # enable inherit $isProtected = $false $preserveInheritance = $false $NewAcl.SetAccessRuleProtection($isProtected, $preserveInheritance) Set-Acl -Path $path -AclObject $NewAcl <!--NeedCopy--> -
Agregue la gMSA a la Consola de autorización de Grabación de sesiones.
-
Busque el identificador de seguridad (SID) de la gMSA.

-
Escriba el SID en el archivo SessionRecordingAzManStore en <ruta de instalación del servidor de Grabación de sesiones>\App_Data.

-
Conceda permiso de control total sobre la carpeta App-Data a la gMSA.

-
verificar que el gMSA se ha añadido correctamente a la Consola de autorización de grabación de sesiones.

Nota:
Alternativamente, puede usar un script similar al siguiente para agregar un gMSA a la Consola de autorización de grabación de sesiones:
$account = "IIS1SvC" $AccountDetail = Get-ADServiceAccount -Identity $account $accountSid = $AccountDetail.SID.Value write-host $accountSid $path = "C:\Program Files\Citrix\SessionRecording\Server\App_Data\SessionRecordingAzManStore.xml" $doc = [xml](Get-Content $path) $node = $doc.AzAdminManager.AzApplication.AzRole | Where-Object {$_.Name -eq "LoggingWriter"} $element = $doc.CreateElement("Member") $element.InnerText = $accountSid $node.AppendChild($element) $doc.Save($path) <!--NeedCopy--> -
En este artículo
- Paso 1: Crear una gMSA en el controlador de dominio
- Paso 2: Instale la gMSA en cada servidor miembro
- Paso 3: Habilitar el gMSA para acceder a la base de datos de grabación de sesiones y a la base de datos de registro de grabación de sesiones
- Paso 3: Habilitar el gMSA para acceder a los servidores de grabación de sesiones