Pregunta

Del lado del cliente Necesito pasar una información (para este ejemplo, digamos una cadena) a cada llamada de servicio que realizo. Los servicios usan esta cadena (currentRole) junto con las credenciales de usuario / pase para recuperar el conjunto de reclamos de un usuario asociado con su rol actual.

Las soluciones que he encontrado hasta ahora son:

1) Modifique los encabezados de los mensajes a medida que salen del cliente y verifique que el encabezado del mensaje esté en el lado del servicio.

2) Use una credencial personalizada que, por lo que entiendo, también requiere un token de seguridad personalizado para almacenar la cadena.

¿Me faltan otros enfoques, como simplemente agregar esa información a un token / credencial existente? ¿Y existen ventajas y desventajas de las soluciones mencionadas anteriormente?

Gracias.

¿Fue útil?

Solución

También podría escribir un comportamiento del lado del Cliente que agregaría este encabezado a los mensajes (para que no tenga que pensar en hacerlo usted mismo en su código).

Puede implementar un IClientMessageInspector y, en la anulación del método BeforeSendRequest , agregue un encabezado de mensaje. Cuando agrega este comportamiento a cada uno de los puntos finales de su cliente, agregará ese encabezado de mensaje automáticamente a cada mensaje saliente.

Vea esto Artículo de CodeProject para algunas informaciones iniciales, y esto publicación de blog para obtener un conocimiento más profundo.

Marc

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top