Question

Je en ai besoin et en cours d'exécution rapide, mais j'ai passé les dernières heures à la recherche / se soucier de ce qui serait mieux:

Asp.net l'authentification par formulaire

vs

En-tête personnalisé Token: Sur le serveur

protected override void OnStartProcessingRequest(ProcessRequestArgs args)
{
     if (string.IsNullOrEmpty(WebOperationContext.Current.IncomingRequest.Headers.Get("magic")))
     {
           throw new DataServiceException(403, "Sorry No Magic found");
     }
      else
     {
           base.OnStartProcessingRequest(args);
     }
}

Windows Forms client

static void datProvider_SendingRequest(object sender, SendingRequestEventArgs e)
{
    e.RequestHeaders.Add("magic","HASHED_userbased_token");
}

Considérations:

  • Je ne l'ai jamais utilisé les formes auth (mais je peux apprendre?)
  • L'enregistrement utilisateur est complexe (Les dossiers des employés sont vérifiés alors les utilisateurs sont créés en fonction de ceux)
  • J'ai mon propre groupes d'utilisateurs personnalisés / tables d'autorisation / système
  • Il n'y a pas SSL (client de soins ne marche pas sur ce fait, les données ne sont pas tout ce précieux)
  • Il me semble que Im plus en contrôle avec l'en-tête personnalisé.
Était-ce utile?

La solution

Utilisez un jeton d'en-tête personnalisé. Formes Auth suppose que l'homme sera authentifie au service, ce qui serait une chose assez étrange de se produire sur un OData point final. OData est plus sur des ordinateurs ou des services d'authentification au service OData.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top