Sending it here too, but ideally if you have questions/comments, that would be better to join the thread on centos-devel list.
Thanks !
-------- Forwarded Message -------- Subject: [CentOS-devel] CentOS/Fedora authentication system merge (Please Read) Date: Wed, 27 Jan 2021 08:58:13 +0100 From: Fabian Arrotin arrfab@centos.org Reply-To: The CentOS developers mailing list. centos-devel@centos.org To: The CentOS developers mailing list. centos-devel@centos.org
# Introduction and background
As it was preannounced some time ago , the CentOS Board agreed to merge the CentOS accounts (https://accounts.centos.org) with the Fedora FAS (https://admin.fedoraproject.org/accounts/)
As both projects were running their own instance of FAS (running on el6/CentOS 6, so coming to EOL, so that needed to be migrated to new solution/platform), but that there are a lot of contributors common to both projects, it made sense to "migrate and merge" both into one, and so having only one account that can be used for both.
The AAA/Noggin team worked in the last months on the new authentication system that will be used as foundation.
The core block will be (Free)IPA (https://www.freeipa.org , already available in the distribution) and the community portal feature will be provided by noggin (https://github.com/fedora-infra/noggin)
If you want to know more about noggin, consider watching the presentation given at last Fedora Nest event (https://www.youtube.com/watch?v=x1SevUmkE60)
# What does it mean for you, contributors and SIG members ?
Fedora already had an IPA infra, but "hidden" behind FAS, so accounts were already created in IPA backend. For CentOS, we were just using plain FAS, so users in our own backend (fas db).
The "Merge" operation will go like this :
- Fedora will kick fas2ipa script (https://github.com/fedora-infra/fas2ipa), synchronizing FAS attributes back into IPA, including group memberships coming from FAS/Fedora - Then the same process will be ran but importing from ACO (https://accounts.centos.org) into the same IPA backend.
That's where the "fun" begins:
* If the same nick/account exists at both side, the script is considering FAS as authoritative (remember, the FAS user *already* exists there, and is only modified for group[s] membership and attributes) * What is used to consider same nick/account being the same person ? the email (validated when registering account) will be used as primary key. So that means that you should *now* verify/update your email address in FAS and ACO so that they match * in case of a email address mismatch, the ACO account isn't migrated (group membership) but put in a queue to be verified * in case of matching email address, existing account is added to imported ACO groups
The "open" question is about what to do for same account but in fact being different people (question is debated between Fedora and CentOS through the AAA initiative)
# What has been already done ?
You can follow publicly the status through dedicated tracker ( https://github.com/orgs/fedora-infra/projects/6 ), but let me focus on the CentOS Side (sending this to centos-devel so centos contributors)
In the last months, Fedora already deployed a staging (.stg.) IPA instance, as well as a noggin community portal.
For CentOS, we deployed (to be able to test integration) the following components in front of the Fedora IPA: * https://accounts.stg.centos.org (using noggin, with a centos visual theme applied) * https://id.stg.centos.org (ipsilon, used for openid/openidc IdP)
We then reached out to some "key users" to validate that some applications migrated to new authentication system were working fine.
We tested with : * pagure (https://git.stg.centos.org) * koji * openshift/OCP * some other apps using openid
In December 2020, there was a first ran of the fas2ipa script, so (consider this a snapshot) existing accounts in both FAS and ACO were merged.
From that import, there were 123 accounts that were duplicates ones, but
as said, it can be that they are the same account but using different email addresses.
# What do you have to do ? You can try to login through https://accounts.stg.centos.org and see if you can login. Important remark: if you *didn't* have a FAS account , your account was imported/created for the first time in IPA, so that means that you'll have to use the "Forgot Password ?" feature on portal to reset your account (mail will be sent to email address tied to your account)
# When will the real migration happen ?
We'll wait on AAA/noggin team to give us estimated date, and when they'll migrate Fedora first. Once that will be done, we'll migrate ACO to the new setup (probably fas2ipa script ran during a week-end, but to be announced)
# How will that impact my workflow for CentOS as SIG member ?
Worth knowing that all deployed services using ACO will have to be reconfigured for AAA. That currently means :
* https://git.centos.org (and also the MQTT bus for git push notifications) * https://cbs.centos.org (and also non public signing service) * other small services using OpenID/OpenIDC for authentication (https://blog.centos.org, some jenkins instances used by QA team, etc)
As said, we have already staged all changes to support new auth in our ansible roles. When we'll have rolled out these changes, your existing TLS certificate that you use to authenticate with for cbs.centos.org *will not* work anymore (important)
That means that you'll have to retrieve a new TLS cert, signed by the IPA CA cert. How to do that ? I'll see about how porting this to know repository, but for now, there is a copr repo that you can use : https://copr.fedorainfracloud.org/coprs/arrfab/fasjson-client/
IMPORTANT : do *not* use this pkg now, or do this from another workstation/vm/account/whatever : the new 'centos-cert' util would replace your currently working TLS cert (from ACO) . (Well, as fasjson for prod *isn't* deployed yet, that would not work at all, but it would when deployed
If you have questions, feel free to ask in this thread, or join #fedora-aaa on Freenode.