Determinar el tipo de seguridad de diálogo

El tipo de seguridad de diálogo que se utiliza para una conversación depende de las opciones de la instrucción BEGIN DIALOG CONVERSATION, de la configuración del enlace de servicio remoto del servicio y de si el propietario del servicio iniciador posee un certificado. Para cada nuevo diálogo, SQL Server busca el enlace de servicio remoto del servicio de destino en la vista de catálogo sys.remote_service_bindings.

En la tabla siguiente se enumeran los tipos de seguridad de diálogo para cada combinación válida. Tenga en cuenta que si existe un enlace de servicio remoto, el diálogo utiliza el cifrado independientemente de la configuración de la instrucción BEGIN DIALOG CONVERSATION.

 

 

No existe ningún enlace de servicio remoto

Enlace de servicio remoto con ANONYMOUS = ON

Enlace de servicio remoto con ANONYMOUS = OFF

El propietario del servicio tiene un certificado

ENCRYPTION = ON

Error de diálogo

Seguridad anónima

Seguridad completa

El propietario del servicio tiene un certificado

ENCRYPTION = OFF

No existe seguridad de diálogo

Seguridad anónima

Seguridad completa

El propietario del servicio no tiene ningún certificado

ENCRYPTION = ON

Error de diálogo

Seguridad anónima

Error de diálogo

El propietario del servicio no tiene ningún certificado

ENCRYPTION = OFF

No existe seguridad de diálogo

Seguridad anónima

Error de diálogo

  • Error de diálogo
    SQL Server no tiene la información necesaria para proporcionar la seguridad requerida. Service Broker finaliza la conversación y coloca un mensaje de error en la cola del servicio iniciador.

  • No existe seguridad de diálogo
    SQL Server no proporciona seguridad de diálogo para el diálogo. Las operaciones en nombre del servicio iniciador se ejecutan como public en la base de datos de destino. Los mensajes no se cifran para este diálogo. Sin embargo, tenga en cuenta que la seguridad de transporte puede cifrar el mensaje en la red.

  • Seguridad anónima
    SQL Server utiliza seguridad anónima. Los mensajes que no están dentro de la instancia se cifran para este diálogo. Dado que el servicio de destino no puede comprobar la identidad del servicio iniciador, las operaciones en nombre del servicio iniciador se ejecutan como public en la base de datos de destino.

  • Seguridad completa
    SQL Server utiliza seguridad completa. Los mensajes que no están dentro de la instancia se cifran para este diálogo. Las operaciones en nombre del servicio iniciador se ejecutan como el usuario designado en la base de datos de destino.