tutorial instalar funciona dominio directorio controlador como administracion activo active .net active-directory transactions msdtc

.net - instalar - ¿Es consciente de las transacciones de Active Directory?



controlador de dominio active directory (2)

La respuesta corta es - no. ActiveDirectory es esencialmente una implementación de LDAP (con algunas extensiones de lujo, pero en esencia sigue siendo LDAP). Ni los protocolos LDAP ni las especificaciones tienen el concepto de transacciones, así que esto realmente no es posible.

Sería posible emular las transacciones del lado del cliente, pero tendrías que hacerlo tú mismo o usar Spring que, creo, lo hará por ti; obviamente, esto no es tan seguro como las transacciones del lado del servidor que esperarías de un DB. Una nota sobre Spring: no estoy del todo seguro de que Spring.NET soporte ''transacciones'' para LDAP todavía, pero tienen algo así en la implementación de Java de Spring. Puede valer la pena mirar.

Al leer los documentos en el método CommitChanges, simplemente dice que envía los cambios al servidor; si no quiere decir que son seguros para las transacciones, supongo que no.

Algunos pensamientos al azar: supongo que es posible que Microsoft pueda agregar algo como esto en ActiveDirectory (ya que es más que solo LDAP) pero probablemente no lo harán si aún no lo han hecho.

Pregunta simple pero no puedo encontrar la respuesta en ninguna parte: ¿está consciente Active Directory de las transacciones?

En otras palabras, se revertirá el siguiente cambio (ya que no llamé a scope.Complete() ):

using (var scope = new TransactionScope()) { DirectoryEntry entry = ...; entry.Properties["givenName"].Value = "New Given Name"; entry.CommitChanges(); }

Si no, ¿es posible habilitar esto de alguna manera? Ahora mismo tengo un código que realiza las actualizaciones de la base de datos y las correspondientes actualizaciones de AD y tengo una lógica de compensación para las actualizaciones de AD si de alguna manera fallan. Esta solución está lejos de ser óptima.

Saludos cordiales, Ronald Wildenberg