Skip to content

Add login with SSO button to the Home Assistant login UI #19

@voc0der

Description

@voc0der

So, I got this working! Yay.

It took me a second to realize how you intended for the /auth/oidc/welcome vs /auth/oidc/redirect work. I wanted a more seamless experience like you mentioned, so I put a redirect on / in my location / {} block, like if (exact_path...= '/'), and that worked to get me to /auth/oidc/redirect but after filling out the form to login, it seems to send me in a loop and seems to go back to the same path on POST. But then I realized why automating that wouldn't be ideal, so anyways... it makes more sense to make a button on the root of the login screen to go to the redirect path/welcome path, and have those appear optionally as config.yaml vars.

I think what you did makes sense since you want to open authentication beyond web users (mobile.) But what is confusing to me is that there is no link to the oidc login auth screen at the root login screen. You just get that vague box, (at the very least, it could say its a quick code box as a input text hint) so unless you read the documentation, you aren't going to know how to login.

Anyways, if anyone wants to copy my homework:

auth_oidc:
  client_id: "xxxxxxxxxxxxxxxxx"
  discovery_url: "https://auth.netspace.in/.well-known/openid-configuration"
  client_secret: "xxxxxxxxxxxxxxxxx"
  display_name: "Log in with Authelia"
  id_token_signing_alg: RS256
  features:
    automatic_user_linking: true
    automatic_person_creation: true
  claims:
    display_name: name
    username: preferred_username
    groups: groups


- client_id: 'xxxxxxxxxxxxxxxxx'
  client_name: Home Assistant
  client_secret: 'xxxxxxxxxxxxxxxxx'
  public: false
  authorization_policy: two_factor
  require_pkce: true
  pkce_challenge_method: 'S256'
  consent_mode: implicit
  pre_configured_consent_duration: 1M
  token_endpoint_auth_method: client_secret_post
  redirect_uris:
    - https://homeassistant.xxxxxxxxxxxxxxxxx.com/auth/oidc/callback
  scopes:
    - groups
    - openid
    - profile
  grant_types:
    - authorization_code
  userinfo_signed_response_alg: 'none'

If anyone is using authelia and wants to copy my homework. I know there's already an example but I was surprised to see PCKE not there

And before I forget, thank you for this amazing project.

Metadata

Metadata

Labels

enhancementNew feature or requestfeature-limited-by-Home-Assistant-APIGiven to issues and feature requests that are hard to implement due to limitations in HAhelp wantedExtra attention is needed

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions