Learn Authentication the Hard Way: Part Three
andrew-best.com
Learn Authentication the Hard Way: Part Three
1–10 of 15 posts
Re: Learn Authentication the Hard Way: Part Three
#2> OAuth 2.0 provides a rich authorization framework with well-defined security properties. However, as a rich and highly extensible framework with many optional components, on its own, this specification is likely to produce a wide range of non-interoperable implementations.
Don't get me wrong, OAuth is still better than WS-Fed and what we had before but we really need to come up with a real standard and spec for authentication, because OAuth/OIDC is a joke. It isn't just me either that thinks this one of the authors of the OAuth spec said as much[1]
Can anyone tell me what their experience with OAuth has been, or have they been able to get it to work across multiple different systems. I would love to believe it is just my org, but it seems like the entire identity space is a clusterfck.
[1] https://hueniverse.com/oauth-2-0-and-the-road-to-hell-8eec45...
Re: Learn Authentication the Hard Way: Part Three
#3I am currently an IAM engineer and can I just throw out there how much I hate OAuth/OIDC, I work at a large org and have to integrate with dozens of different vendors and applications and not a single one has the same way of doing OAuth because to quote the spec, wait it isn't a spec it is a "framework" we have to remember that, under interoperability it says > OAuth 2.0 provides a rich authorization framework with w…
Re: Learn Authentication the Hard Way: Part Three
#4I am currently an IAM engineer and can I just throw out there how much I hate OAuth/OIDC, I work at a large org and have to integrate with dozens of different vendors and applications and not a single one has the same way of doing OAuth because to quote the spec, wait it isn't a spec it is a "framework" we have to remember that, under interoperability it says > OAuth 2.0 provides a rich authorization framework with w…
We implemented OAuth about a year ago with Okta, and it's been an absolute nightmare. We have a couple of clients that have their own IDP, and they want us to let them use SAML to authenticate. I can't figure out whether the difficulties are inherent to SAML itself or because of Okta, but I hate it either way.
Re: Learn Authentication the Hard Way: Part Three
#5I am currently an IAM engineer and can I just throw out there how much I hate OAuth/OIDC, I work at a large org and have to integrate with dozens of different vendors and applications and not a single one has the same way of doing OAuth because to quote the spec, wait it isn't a spec it is a "framework" we have to remember that, under interoperability it says > OAuth 2.0 provides a rich authorization framework with w…
I think it's important to keep in mind that the hard part of OAuth/OIDC has nothing to do with the core federated authentication flow. The complexity comes from several other known hard problems: federated trust, AKA how do you on-board federated trust between business entities using short-lived, easily rotated certificates? And federated authorization, AKA how do you codify the taxonomies of user roles and application permissions as an API contract between diverse businesses and apps? Both are known hard problems.
Re: Learn Authentication the Hard Way: Part Three
#6I am currently an IAM engineer and can I just throw out there how much I hate OAuth/OIDC, I work at a large org and have to integrate with dozens of different vendors and applications and not a single one has the same way of doing OAuth because to quote the spec, wait it isn't a spec it is a "framework" we have to remember that, under interoperability it says > OAuth 2.0 provides a rich authorization framework with w…
Nonetheless, OAuth2 just defines the roles of the players in a situation where an application wants to act on behalf of the user, and defines a few useful interactions between them.
OIDC then layers on top of OAuth2, by defining custom payloads that communicate authentication requests and responses. It does so by relying heavily on the JOSE specs. The end result of all this layering is a protocol that's conceptually similar to SAML, despite looking and feeling rather different. Meanwhile, all the truly hard stuff, like Discovery and Federation, are additional specs alongside. They see much less use.
There's sometimes bad implementations, and there's sometimes authorization flows that aren't actually OAuth2 but merely "OAuth2-inspired". In these, and in transmitted payloads, gratuitous differences from vendor to vendor are irksome.
The same stuff happens in SAML-land too. There are products big and small, IdPs and SPs, that don't actually comply with the protocol. Sometimes the product is fine in theory, but it's misused or misconfigured. Sometimes the IdP product is big enough that they have little incentive to improve, and sometimes the SP is desirable enough that you're being pressured by your employer to integrate with them regardless of any protocol shenanigans.
Re: Learn Authentication the Hard Way: Part Three
#7I am currently an IAM engineer and can I just throw out there how much I hate OAuth/OIDC, I work at a large org and have to integrate with dozens of different vendors and applications and not a single one has the same way of doing OAuth because to quote the spec, wait it isn't a spec it is a "framework" we have to remember that, under interoperability it says > OAuth 2.0 provides a rich authorization framework with w…
We implemented OAuth about a year ago with Okta, and it's been an absolute nightmare. We have a couple of clients that have their own IDP, and they want us to let them use SAML to authenticate. I can't figure out whether the difficulties are inherent to SAML itself or because of Okta, but I hate it either way.
Re: Learn Authentication the Hard Way: Part Three
#8I am currently an IAM engineer and can I just throw out there how much I hate OAuth/OIDC, I work at a large org and have to integrate with dozens of different vendors and applications and not a single one has the same way of doing OAuth because to quote the spec, wait it isn't a spec it is a "framework" we have to remember that, under interoperability it says > OAuth 2.0 provides a rich authorization framework with w…
Re: Learn Authentication the Hard Way: Part Three
#9I am currently an IAM engineer and can I just throw out there how much I hate OAuth/OIDC, I work at a large org and have to integrate with dozens of different vendors and applications and not a single one has the same way of doing OAuth because to quote the spec, wait it isn't a spec it is a "framework" we have to remember that, under interoperability it says > OAuth 2.0 provides a rich authorization framework with w…
I'm not sure what your exact use case is, but if you need to connect to oauth-based APIs have you tried https://pipedream.com ? It's a free developer tool that provides managed auth (including oauth token generation and refresh) for 100+ apps with an easy way to orchestrate those APIs in Node.js workflows. I wrote a short blog post at https://dev.to/pipedream/use-any-api-in-seconds-with-auth-ma... . I hope that's hel…
Re: Learn Authentication the Hard Way: Part Three
#10I am currently an IAM engineer and can I just throw out there how much I hate OAuth/OIDC, I work at a large org and have to integrate with dozens of different vendors and applications and not a single one has the same way of doing OAuth because to quote the spec, wait it isn't a spec it is a "framework" we have to remember that, under interoperability it says > OAuth 2.0 provides a rich authorization framework with w…