canonical / canonical/authd

Issue: authd-msentraid: provider attempts to use synced passkeys with no fallback to password

Open
#1,915 3 comments 2 reactions 0 assignees View on GitHub
jira
Dominant language
Go
Stars
308
Forks
41
Avg merge
2d 4h
Merged PRs (30d)
58

Description

### Is there an existing issue for this?

- [x] I have searched the existing issues and found none that matched mine

### Describe the issue

Myself and some of our Entra ID users have synced passkeys setup through MS Authenticator and Bitwarden.

The change that was added recently to add passkey support on [PR 1723](https://github.com/canonical/authd/pull/1723/) appears to have broken the ability to SSH into an Ubuntu machine I have never signed into before.

When attempting to SSH into a new system using my Entra ID credentials, I am prompted to use the Microsoft Entra ID provider, however, I have to press Enter and then it attempts to wait for input on a physical security key. There does not seem to be any recourse to fall back on password-based authentication. It does appear to try to use device-code login flow, which is restricted on our tenant from a built-in Microsoft policy.

```
test@WORKSTATION:~$ ssh test.user@domain.com@TESTUBUNTU
== Provider selection ==
1. local
2. Microsoft Entra ID
(test.user@domain.com@TESTUBUNTU) Choose your provider:
> 2
== Entra ID authentication ==
Press Enter to wait for authentication or enter 'r' to go back to choose the provider
(test.user@domain.com@TESTUBUNTU) Checking available Entra ID authentication methods...:
>
== Use your security key ==
Press Enter to wait for authentication or enter 'r' to go back to choose the provider
(test.user@domain.com@TESTUBUNTU) Insert your security key and touch it:
>
This account requires FIDO/security key authentication, which is not available in this mode. The device code flow is also unavailable. Please contact your administrator.
== Provider selection ==
1. local
2. Microsoft Entra ID
(test.user@domain.com@TESTUBUNTU) Choose your provider:
```

Previous iterations of authd allowed for users to use their Entra password.

As far as I'm concerned, this is a regression. Many smaller organizations do not have physical security keys and operate headless Ubuntu. This defeats the purpose of using authd to enable SSH with authorized users' credentials.

authd version is: 0.6.4
authd-msentraid version is: 0.4.1 (rev 462)
Ubuntu 26.04

### Steps to reproduce

_No response_

### System information and logs

_No response_

### Double check your logs

- [x] I have redacted any sensitive information from the logs

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the SSH login flow described for authd 0.6.4 and authd-msentraid 0.4.1, then trace the Microsoft Entra ID provider selection and passkey authentication path. Done means users without usable security keys or device-code access can fall back to Entra password authentication when signing into a new Ubuntu system.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
authentication
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.