nextcloud / nextcloud/user_saml

Have user_saml ask for totp code if enabled for user

Open
#288 10 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

0. Needs triage enhancement security
Dominant language
PHP
Stars
104
Forks
85
Avg merge
1d 15h
Merged PRs (30d)
16

Description

Steps to reproduce
  1. Configure nextcloud to use user_saml
  2. Configure nextcloud to use https://github.com/nextcloud/twofactor_totp
  3. Configure totp for your user
  4. Login using SAML
Expected behaviour

After authentication using SAML, I would expect to the 2nd factor authentication to kick in. Aka, it should ask for the totp code.

Actual behaviour

Immediately logged in without asking for totp code

Server configuration

Operating system: linux
Web server: docker
Database: postgresql docker
PHP version: 7.2.19

Version: 15.0.10

Updated from an older version or fresh install: update

List of activated apps:
notable user_saml for login, and twofactor_totp for 2nd factor auth

Client configuration

Browser: firefox

Operating system: win10

Logs
Web server error log
Insert your webserver log here
Server log (data/nextcloud.log)

nothing of totp or user_saml here

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the user_saml SAML login flow and how it hands off to Nextcloud's twofactor_totp app. Reproduce the reported login sequence with SAML and TOTP enabled, then verify that authentication does not complete until the TOTP code is requested and accepted.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
authentication, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.