Haría un pequeño proyecto (WCF + REST) y tendré un pequeño problema. Quiero hacer mi clase de Autorización y Autenticación.Encabezados en OperationContext
Mi clase de autorización:
//validate api key
public class BasicAuthorization : ServiceAuthorizationManager
{
public override bool CheckAccess(OperationContext operationContext,
ref Message message)
{
//some code
}
}
clase Mi 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
}
}
tengo demasiado algún archivo de configuración
<behavior>
<serviceAuthorization
serviceAuthorizationManagerType="WCF.BasicAuthorization, WCF"/>
<serviceAuthenticationManager
serviceAuthenticationManagerType="WCF.BasicAuthentication, WCF"/>
</behavior>
El código en la clase no es importante - no es un problema.
Mi problema es cómo obtener Encabezados de operaciónContext o clase de mensaje. Como digo antes, hago esto en reposo, así que quiero el conjunto de autorizaciones de encabezado manual/encabezado www-authenticate, pero la aplicación no lo ve.
enciendo la Fiddler2, y tratar de poner cualquier encabezado por ejemplo:
Content-Type: application/xml
Authorization: Basic bla23rwerfsd3==
User-Agent: Fiddler
Host: localhost:59305
Y los message.Headers/operationContext.Headers no tiene ningún mi cabecera (sólo tiene otro), sin autorización , no Content-Type
Estoy teniendo el mismo problema. ¿Has encontrado alguna solución a este problema? –