Exchange 2010 tiene un modelo de delegación donde grupos de WinRM cmdlets se essentally agrupan en funciones y los roles asignados a un usuario.
Este es un modelo excelente y flexible, considerando cómo puedo aprovechar todos los beneficios de PowerShell, mientras uso las tecnologías adecuadas de bajo nivel (WCF, SOAP, etc.) y no requiere software adicional en el lado del cliente.
Pregunta (s)
¿Hay alguna manera de aprovechar el modelo de delegación de Exchange en mi aplicación .NET?
¿Alguien ha intentado imitar este modelo?
Si debo comenzar desde cero, ¿cómo haría para imitar este enfoque?
Respuestas:
Los dos RBAC más grandes para .NET son NetSqlAzMan http://netsqlazman.codeplex.com/ y RhinoSecurity https://github.com/ayende/rhino-security
Si termina teniendo que seguir la ruta de comenzar desde cero, puede usar cualquiera de los anteriores como base de partida.
fuente
Exchange proporciona un espacio de ejecución constante, y en realidad no hay cmdlets disponibles en ese espacio de ejecución. Lo que parecen ser cmdlets son en realidad funciones proxy. Sus capacidades en el espacio de ejecución se controlan limitando qué funciones de proxy se proporcionan y qué capacidades de cada cmdlet quedan expuestas por la función de proxy.
Duplicar eso implicaría desarrollar rutinas que llenen el espacio de ejecución con funciones proxy adaptadas al usuario que solicita el espacio de ejecución, en función de los grupos de roles a los que pertenecen. No veo ninguna razón por la que los grupos de AD no puedan ser sus grupos de roles.
Los detalles de implementación serían específicos de la aplicación, pero básicamente significa que usted limita quién puede usar qué parámetros de los cmdlets eligiendo qué parámetros tendrán las funciones proxy proporcionadas a ese usuario y / o limitando qué valores aceptará la función para parámetros particulares.
fuente