Add draft/extoidc and draft/OBJECTSTORAGE#597
Add draft/extoidc and draft/OBJECTSTORAGE#597reesericci wants to merge 6 commits intoircv3:masterfrom
draft/extoidc and draft/OBJECTSTORAGE#597Conversation
ValwareIRC
left a comment
There was a problem hiding this comment.
Just curious, how comes you didn't go with a SASL mechanism? (I just woke up, sorry if dumb question)
It implicitly uses SASL because the authentication backchannel is over a (presumably SASL-authenticated) IRC connection |
draft/EXTOIDC and draft/OBJECTSTORAGEdraft/extoidc and draft/OBJECTSTORAGE
|
it would be really nice if you could include some normative examples of how the flow might look to the client and server and third-party |
|
well i think extoidc can be replaced with just SASL OAUTHBEARER? |
Can do, I'll make some diagrams.
No, that standard is to allow for logging into an IRC server with OAuth, not for the IRC server to expose an OIDC directory. This is for logging into external services (ie a file host) securely with your IRC connection, not for establishing that IRC connection.
Please read before commenting. This was created explicitly to address security issues in FILEHOST. |
|
Ok I added some normative diagrams that should clear up the flow for folks. Let me know what you think. |
|
I've written my thoughts about this PR here: #562 (comment) |
|
I could get behind this if I get convinced it's the minimum complexity for the client protocol. Also, why does it need to be OIDC explicitly on the client side? Couldn't it be an opaque token? I see no mention of the service to request a token for. This information could allow the server to generate tokens differently depending on the external service. Even assuming every external service uses OIDC, bugs and implementation subtleties always come up. |
This pull request provides a secure and standardized flow for authenticating external services using OpenID Connect over an IRC backchannel (no web redirects!), as well as secure object storage provider discovery and authentication using extoidc, as well as resumable uploads using tus.io.
Stemmed from:
#562
#562 (comment)
#562 (comment)