‹ BackHN Continuity

Thread

SAML: A fractal of bad design

353 points · 190 comments · aray07

  1. jmbwell · · focus · HN ↗
    It’s such a product of “Ooh! Markup languages! What can we use a markup language to solve!” When authentication is just not a document or data stream that needs marked-up.

    The article rightly connects this to XML, which was indeed the hammer to everything’s nail at the time

    I think we aren’t done with this problem yet, though. OIDC makes a lot of assumptions in service to Google and others. And tailscale as mentioned, despite “holding the line,” already reveals the cracks when things like GitHub accounts have to be treated differently from others.

    What we are missing is a provider-independent way to do this. I should be able to create an account and log in just about anywhere using a backend I control. It can be done, but not with what we have today

    1. blm126 · · focus · HN ↗
      OpenID Connect actually has all the machinery needed to support federated login as part of its dynamic discovery and dynamic registration specifications. The issue is that absolutely no one uses them or implements them.

      Smaller tech companies don't want federated login to happen. They are, as a rule, far to happy to rely on the SSO tax to up-sell enterprise customers. The major authentication companies don't want federated login to happy because it invites more competitors and threatens their absurd margins.

      Until someone manages to solve the business side, no amount of improved technology will change a thing. I'm pretty sure the few small interoperability gaps OpenID Connect has could be corrected in a matter of months if the stakeholders actually cared.

      1. degamad · · focus · HN ↗
        OpenID started its life as an attempt at a federated login standard.

        From vague memory, the other stuff in OpenID Connect was layered over the original OpenID identity verification part.

        1. CodesInChaos · · focus · HN ↗
          OpenID Connect is OAuth2 extended to cover a similar feature set as OpenID.
        2. xp84 · · focus · HN ↗
          Yeah I’m so old, I remember when LiveJournal (probably when bradfitz was still involved) were among the first to support original OpenID.
        3. unscaled · · focus · HN ↗
          There is nothing left from the OpenID 1.0 and 2.0 protocol in OpenID Connect, except for the core features (identity federation, identity information encoding and updates).

          OpenID Connect is basically OpenID reimagined on top of OAuth 2.0, with using JWT for the identity data.

          The core OpenID Connect spec is still purely a federated identity standard. There are many other standards pushed by the OpenID foundation, but OpenID Connect itself was never meant to be anything more. The main feature differentiator from the OG OpenID is that it's built on top of OAuth, so you can add other features supported by OAuth (like authorization) ad-hoc.

      2. edoceo · · focus · HN ↗
        Why haven't (we?) these federation features been used?
        1. xp84 · · focus · HN ↗
          Federation sounds like decentralization to me. Decentralized is like a dirty word when you’re in the business of either selling SaaS or pushing private citizens to go all in on the GOOG/AAPL/MSFT ecosystems. And everyone with any influence over what gets adopted and used, is in those categories.
        2. preisschild · · focus · HN ↗
          They are being used. Workload Identity Federation is often used to assign oidc identities to workloads and the Client ID Metadata Document (basically dynamic client registration) is used in protocols such as MCP and atproto
      3. hirsin · · focus · HN ↗
        As someone with a vested interest/being/been many of the parties you mention... Do you think support for "federated login via OIDC" would _not_ fall under the SSO tax?

        Who do you think would host the "federated login" system that would replace the major authentication companies?

        You can already stand up a SAML or OIDC provider using OSS and run the IdP for your company. I have many customers that do! And you bet we still charge them for SSO, and that they're every six months asking how bad the migration to a "big auth company" would be.

        1. cryptonector · · focus · HN ↗
          GP was probably thinking of Azure AD / Entra as the "SSO tax".
          1. ptman · · focus · HN ↗
            <a href="https:&#x2F;&#x2F;sso.tax&#x2F;" rel="nofollow">https:&#x2F;&#x2F;sso.tax&#x2F;
            1. cryptonector · · focus · HN ↗
              Thanks!
        2. ndriscoll · · focus · HN ↗
          With dynamic client registration, I could host my own IdP server at home, or with a provider of my choice, and it would just work everywhere without any coordination work for anyone, manual signups to be assigned a client id&#x2F;secret, etc. The entire point is that you won&#x27;t let me do that because you want to charge extra for better, simpler, cheaper security for everyone. That is the SSO tax.

          I should be able to just give my email or domain name, and it kicks off an oauth flow to that domain no matter who I use for my email&#x2F;identity. In the same way that I can give you my email address and you&#x27;ll just email me without me having to pay extra for enterprise email.

Open on Hacker News to reply ↗

Unofficial Hacker News client; not affiliated with Y Combinator.