nextcloud / nextcloud/user_saml

Cannot change the default NameIDPolicy in the GUI.

Open
#256 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
PHP
Stars
104
Forks
85
Avg merge
1d 15h
Merged PRs (30d)
16

Description

Steps to reproduce
  1. Setup SAML with IDP (es: Provided by ORACLE OAM)
  2. Is not possible to configure/overwrite Default NameIDPolicy in the GUI
  3. The Idp expect a NameIDPolicy NAMEID_PERSISTENT and SAML assertion Fail
Expected behaviour

Make possibile to change the default NameIDPolicy in the GUI.

Actual behaviour

Tell us what happens instead

We need to manually change the default NameIDPolicy in the user_saml plugin, in the
{PATH}/nextcloud/apps/user_saml/3rdparty/vendor/onelogin/php-saml/lib/Saml2/Settings.php

Server configuration

Operating system: Officiale Docker Netcloud:13.04

Web server: Officiale Docker Netcloud:13.04

Database: Officiale Docker Netcloud:13.04

**PHP version:**Officiale Docker Netcloud:13.04

Nextcloud version: Officiale Docker Netcloud:13.04

**Where did you install Nextcloud from:**Officiale Docker Netcloud:13.04

List of activated apps:

$ ./occ app:list
Enabled:

  • activity: 2.6.1
  • admin_audit: 1.3.0
  • comments: 1.3.0
  • dav: 1.4.7
  • federatedfilesharing: 1.3.1
  • federation: 1.3.0
  • files: 1.8.0
  • files_sharing: 1.5.0
  • files_texteditor: 2.5.1
  • files_trashbin: 1.3.0
  • files_versions: 1.6.0
  • files_videoplayer: 1.2.0
  • firstrunwizard: 2.2.1
  • gallery: 18.0.0
  • logreader: 2.0.0
  • lookup_server_connector: 1.1.0
  • nextcloud_announcements: 1.2.0
  • notifications: 2.1.2
  • oauth2: 1.1.1
  • password_policy: 1.3.0
  • provisioning_api: 1.3.0
  • serverinfo: 1.3.0
  • sharebymail: 1.3.0
  • survey_client: 1.1.0
  • systemtags: 1.3.0
  • theming: 1.4.5
  • twofactor_backupcodes: 1.2.3
  • updatenotification: 1.3.0
  • user_saml: 1.4.2
  • workflowengine: 1.3.0
    Disabled:
  • encryption
  • files_external
  • files_pdfviewer
  • user_external
  • user_ldap

Nextcloud configuration:

$ ./occ config:list system
{
"system": {
"debug": false,
"log_type": "owncloud",
"logfile": "/var/www/html/nextcloud.log",
"loglevel": "1",
"auth.bruteforce.protection.enabled": false,
"logtimezone": "Europe/Rome",
"skeletondirectory": "/config/userskeleton",
"knowledgebaseenabled": true,
"log_rotate_size": 0,
"logdateformat": "F d, Y H:i:s",
"datadirectory": "REMOVED SENSITIVE VALUE",
"updatechecker": false,
"check_for_working_htaccess": false,
"check_data_directory_permissions": false,
"asset-pipeline.enabled": false,
"assetdirectory": "/var/www/html/data",
"dbtype": "mysql",
"filelocking.enabled": true,
"filelocking.ttl": 3600,
"integrity.check.disabled": true,
"version": "13.0.4.0",
"dbname": "REMOVED SENSITIVE VALUE",
"dbhost": "REMOVED SENSITIVE VALUE",
"dbtableprefix": "oc_",
"dbuser": "REMOVED SENSITIVE VALUE",
"mysql.utf8mb4": true,
"dbpassword": "REMOVED SENSITIVE VALUE",
"installed": true,
"apps_paths": [
{
"path": "/var/www/html/apps",
"url": "/apps",
"writable": true
},
{
"path": "/var/www/html/apps",
"url": "/apps-appstore",
"writable": true
}
],
"trusted_domains": [
"REMOVED SENSITIVE VALUE",
"*"
],
"instanceid": "REMOVED SENSITIVE VALUE",
"overwrite.cli.url": "REMOVED SENSITIVE VALUE",
"ldapIgnoreNamingRules": false,
"ldapProviderFactory": "\OCA\User_LDAP\LDAPProviderFactory"
}
}

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 tracing the SAML configuration GUI and compare its available settings with the default NameIDPolicy in 3rdparty/vendor/onelogin/php-saml/lib/Saml2/Settings.php. Add a GUI-configurable value for the required policy, then verify that selecting NAMEID_PERSISTENT is reflected in the generated SAML request and allows the assertion to succeed.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.