-
Notifications
You must be signed in to change notification settings - Fork 162
RPOrigin is validated exactly against the url's fully qualified host name leaving no room for other use cases. #143
Comments
I got the same issue too |
Would it be possible for you to set your RPID to
This is done in order to match the behavior of pervasively deployed ambient credentials (e.g., cookies, [RFC6265]). Please note that this is a greater relaxation of "same-origin" restrictions than what document.domain's setter provides. These restrictions on origin values apply to WebAuthn Clients. Basically if you set the
Then the If you then set |
webauthn-rs also takes a list of origins. So it might be indeed the more ergonomic API to adapt: |
Support for multiple origins is also in the two libraries I wrote:
It's a common enough scenario in more complex RPs that I think this library should implement similar functionality. |
yeah scoping roprigin to a general domain would work for some use cases. I was also looking into supporting the list of unrelated domains. |
There's a use case where a user performs the WebAuthn registration or verification at sub.domain.com, some portal page, then there are some redirects until the resultant WebAuthn data hits auth.domain.com. This is where the actual RP verification happens, and at this point, the origin validation would fail, because the RP expects an origin of auth.domain.com from the request context, whereas the actual WebAuthn request was performed at sub.domain.com.
Here is how it is implemented:
webauthn/protocol/client.go
Line 93 in 4d1cf2d
Another use case might be some FIDO2 SAMLv2 proxy, where a single entity would authenticate users via webauthn protocol and then would redirect a request to a saml validation endpoint.
Here is how it is implemented in alternative libraries, note there is a list of preconfigured RP Origins
https://github.com/webauthn4j/webauthn4j/blob/b3f67afb94dc4187b7b01b4e593c8560841f27c0/webauthn4j-core/src/main/java/com/webauthn4j/validator/OriginValidatorImpl.java#L56
The text was updated successfully, but these errors were encountered: