You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In the above comment, GET /clients/https://foo.example.com/17416 should have been GET /clients/https:%2F%2Ffoo.example.com%2F17416 but this would still not have worked as expected.
The issue appears to stem from httprouter which incorrectly splits the path components after percent-decoding instead of first splitting the components and then decoding them.
Interesting, that's typically the problem with having RESTful interfaces - you can't use URLs as primary identifiers. I fear this is a no-fix for us - you have other URLs such as website which can be used for storing the URL and that don't cause issue. It's also not very usual to use an URL as the primary identifier because URLs change over time and have a hard time with uniqueness (case sensitive or case insensitive URLs? only the domain case insensitive? or the path? both?).
When creating an ORY Hydra OAuth2Client whose client_id ressembles an URL, such client cannot be retrieved from ORY Hydra:
Normal creation and retrieval of a client:
Creating and retrieving a client with client_id matching an URL pattern:
However, when listing all the clients in the server, a client with the specified client_id exits:
Expected behavior
Retrieving an OAuth2Client with URL-like client_id should behave the same way as if the client_id was a random string.
Environment
The text was updated successfully, but these errors were encountered: