Headers en OperationContext
Haría un pequeño proyecto (WCF + REST) y tengo un pequeño problema. Quiero hacer mi clase de Autorización y Autenticación.
Mi clase de autorización:
//validate api key
public class BasicAuthorization : ServiceAuthorizationManager
{
public override bool CheckAccess(OperationContext operationContext,
ref Message message)
{
//some code
}
}
Mi clase de autenticación
// validation user login & password
public class BasicAuthentication : ServiceAuthenticationManager
{
public override ReadOnlyCollection<IAuthorizationPolicy> Authenticate(
ReadOnlyCollection<IAuthorizationPolicy> authPolicy, Uri listenUri,
ref Message message)
{
//some code
}
}
También tengo un archivo de configuración
<behavior>
<serviceAuthorization
serviceAuthorizationManagerType="WCF.BasicAuthorization, WCF"/>
<serviceAuthenticationManager
serviceAuthenticationManagerType="WCF.BasicAuthentication, WCF"/>
</behavior>
El código en clase no es importante, no es un problema.
Mi problema es cómo obtener encabezados de operationContext o clase de mensaje. Como dije antes, hago esto en reposo, así que quiero configurar manualmente el encabezado Authorizaion / www-authenticate header, pero la aplicación no lo ve.
Activo el Fiddler2 e intento poner cualquier encabezado, por ejemplo:
Content-Type: application/xml
Authorization: Basic bla23rwerfsd3==
User-Agent: Fiddler
Host: localhost:59305
Y el mensaje.Headers / operationContext.Headers no tiene ningún encabezado (solo tiene otro), no tiene autorización, no tiene Content-Type