Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Specification of servers announcing allowed keyId types #3

Open
csarven opened this issue Jul 20, 2017 · 4 comments
Open

Specification of servers announcing allowed keyId types #3

csarven opened this issue Jul 20, 2017 · 4 comments
Labels
protocol Core mechanics of the protocol

Comments

@csarven
Copy link
Contributor

csarven commented Jul 20, 2017

Under "3.1.1. Initiating Signature Authorization":

The type of keyId(s) that a client may used is not specified under WWW-Authenticate. Is this intentionally omitted (eg to allow extension specifications to specify)?

Specifying a field like keyIdType in the WWW-Authenticate header can advertise to clients the type of keyId they can use in their request. If a client for example sees keyIdType="uri" (or "rsa", "hmac"..), it would know whether to bother with authentication or not with that keyId. Without this information, the client will have to try to authenticate with the hope that the server can recognise that authentication mechanism.

@csarven
Copy link
Contributor Author

csarven commented Jul 20, 2017

The other way of looking at this is if keyIdType is unspecified, then servers and clients are expected to handle all keyId types in order to interop.

@wrygiel
Copy link
Contributor

wrygiel commented Oct 24, 2017

Perhaps realm can be used for that?

@msporny
Copy link
Contributor

msporny commented Oct 24, 2017

@wrygiel realm is often used for a sub part of the domain to authenticate with, it's not meant to specify key type.

@csarven your suggestion to include something like an expected key type may be useful, but keep in mind that the client is supposed to keep track of that now (because the registration process is out of band). That said, perhaps we should have a "hints" field that can include "keyType", among other sorts of hints?

@liamdennehy
Copy link
Contributor

That said, perhaps we should have a "hints" field that can include "keyType", among other sorts of hints?

I think these approaches start to turn this into a very complex protocol, when it could easily be presented in supplemental documentation. I don't think it's a burden to expect a signer to read up on how to format a request, or state what format they will produce in responses.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
protocol Core mechanics of the protocol
Projects
None yet
Development

No branches or pull requests

4 participants