[MDEV-18311] Change default PAM service name to mariadb Created: 2019-01-19  Updated: 2023-11-30

Status: Open
Project: MariaDB Server
Component/s: Plugin - pam
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: Geoff Montee (Inactive) Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: beginner-friendly

Issue Links:
PartOf
is part of MDEV-30201 Remove MySQL names Open
Relates
relates to MDEV-7032 new pam plugin with a suid wrapper Closed
relates to MDEV-15473 Isolate/sandbox PAM modules, so that ... Closed

 Description   

With the update of the pam authentication plugin from 1.0 to 2.0 in MariaDB 10.4, do we also want to change the default PAM service name from "mysql" to "mariadb"?

https://github.com/MariaDB/server/blob/efba0b1df5abe1ac972181a01bcbd208693639ae/plugin/auth_pam/auth_pam_base.c#L152



 Comments   
Comment by Sergei Golubchik [ 2019-08-06 ]

may be. But it needs to be carefully done to make sure nothing breaks on upgrades.

E.g. if there are users that use PAM plugin and PAM service name is not specified, do an update to set the service name to mysql for all existing users.

Hmm, this will still break new users created to use PAM plugin without a service name.

Comment by Geoff Montee (Inactive) [ 2019-08-06 ]

What if this change were implemented as a new system variable?

The new system variable could be called something like "pam_default_service". The PAM service identified by this system variable could be used for any users where plugin='pam', but authentication_string is not set. The system variable's default value in 10.5 could be "mariadb", but if a user relied on the behavior from 10.4 and before, then they could just set this variable's value to "mysql."

Comment by Sergei Golubchik [ 2019-08-07 ]

Why should we change it at all? I mean, if we do it, and it breaks authentication on upgrade for some user and that user asks why we've changed it, what should be the answer?

Comment by Geoff Montee (Inactive) [ 2019-08-07 ]

I don't really see any technical reason to change the default PAM service name from mysql to mariadb. I see that change more for the purpose of trying to build MariaDB's branding, and trying to rely less on MySQL's branding. Maybe that reason is not a good enough reason to potentially break authentication for some users after they upgrade.

I can think of technical reasons to add a new variable like pam_default_service. Some users determine that the system default "password-auth" or "system-auth" PAM services work with MariaDB and meet their requirements, so being able to configure the default PAM service could offer these users more flexibility.

Comment by Sergei Golubchik [ 2020-09-29 ]

Let's first establish that we want to do it in the first place. And describe the upgrade procedure here, in the MDEV.

Generated at Thu Feb 08 08:43:08 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.