[Osr-101] What's the Neutron-Auth header good for?
Andreas Wuest
awuest at student.ethz.ch
Tue Aug 8 18:45:07 CEST 2006
Hi
On 8.8.2006 12:04 Uhr, Thomas Comiotto wrote:
>> it's not about the client, but about the server. If the server just
>> receives a regular GET request how should it be able to out figure
>> what kind of authentication the client supports. If you can answer me
>> this question then I am happy to remove it, but we have discussed
>> this several times and nobody had an answer.
>>
>
> No. We did discuss and even made a point I think. But you didn't agree
> (or maybe you just didn't listen).
>
> The server has to know that it deals with a neutron request not only in
> case of authentication. So how do you deal with that? You do so by
> either looking at the user-agent header
That may not be the best idea, since we really shouldn't go on and mess
with the user-agent string when using a host application (like Ulysses
currently does, being an extension to Firefox), because other extensions
might be messing with that string as well. So it may not be a reliable
way of telling the server who we are.
> or by assuming that all command
> urls given by some introspection file are requested by a neutron
> client. As I said before and as Andi did too, the latter is just fine.
Yes, that's basically what I said sometime ago: if the client was able
to access that certain URI, this means that the client must be
Neutron-enabled, because otherwise it wouldn't even know about that URI
in the first place.
Now, the counterargument was that the server then has to have some logic
to distinguish URIs, i.e. it has to know that /index.html can be
accessed by normal clients as well as Neutron-enabled clients, whereas
/foo.html can only be accessed by Neutron-enabled clients. AFAIR, this
was said to create major suckage for the server, and it would therefore
be easier if the client would reveal itself using a header field.
OTOH, when having URIs of the form ...&usecase=open, the server already
knows that it has to do something special, so it may as well just assume
that it is dealing with a Neutron-enabled client.
> Neutron clients SHOULD support basic/digest (since they are http
> clients), they MUST support neutron authorization exceptions since they
> are neutron clients.
Basic/digest is kind of hard to implement, so we headed for custom
authentication first.
--
Kind regards,
Andi
More information about the Osr-101
mailing list