Ocultación (servicios de componentes)
Hay dos ingredientes para determinar el comportamiento de la suplantación: la autoridad que el cliente concede explícitamente al servidor a través de un nivel de suplantación y la capacidad del servidor para enmascarar su propia identidad al realizar llamadas en nombre del cliente. Esta última funcionalidad se conoce como capa. El ocultamiento tiene que ver con la identidad de seguridad en la que el servidor realiza llamadas.
Cuando el servidor suplanta al cliente, tiene acceso directo a las credenciales de seguridad del cliente. En un sentido muy local, el subproceso del servidor toma la identidad del cliente. Pero cuando el servidor realiza llamadas fuera de su proceso, la identidad del cliente no se proyectará necesariamente como la identidad con la que se realiza la llamada.
Cuando se habilita el ocultamiento, las llamadas realizadas por el servidor que suplantan al cliente se pueden realizar en la identidad del cliente. Cuando el ocultamiento está deshabilitado, las llamadas realizadas por el servidor se realizarán bajo la identidad del servidor.
Además, hay dos formas de ocultación, de capa estática y de capa dinámica, que se pueden describir de la siguiente manera:
- Suplantación con ocultación estática. La identidad de cliente original (realizada como token de subproceso de servidor) se puede presentar una vez a un servidor de bajada en una llamada mediante CoSetProxyBlanket, estableciendo la identidad de cliente original una vez en el proxy y ese token de subproceso se usará en llamadas de método posteriores.
- Suplantación con capa dinámica. La identidad de cliente original se detecta como token de subproceso de servidor en cada llamada de método al servidor de bajada. En efecto, la identidad que se presenta se puede determinar dinámicamente. La sobrecarga necesaria para hacerlo puede ser considerablemente más costosa.
En el caso de las aplicaciones COM+, la configuración predeterminada es para la funcionalidad de ocultación dinámica. Esto se puede cambiar mediante programación y administrativamente. Aunque el ocultamiento dinámico puede tener sobrecarga de rendimiento, proporciona la flexibilidad que normalmente requieren las circunstancias que requieren el uso de la suplantación en primer lugar.
Para obtener más información sobre el ocultamiento y las descripciones precisas de posibles comportamientos, consulte Ocultación en la documentación de COM.
Temas relacionados