apache / apache/cloudstack

[SAML Groups] Allow linking accounts/domains to SAML groups

Open
#12,212 3 comments 0 reactions 0 assignees View on GitHub
component:saml
Dominant language
Java
Stars
3.1k
Forks
1.4k
Avg merge
6d 19h
Merged PRs (30d)
32

Description

Most SAML IdPs are able to provide group information for the authenticated user in the form of a SAML attribute (with many values for each group the user is in). It would be useful to be able to use the groups in the same way that LDAP groups can, such as to give a user access to certain accounts.

Here is an example SAML response from AWS Identity Center showing how groups are formatted.

```xml


ourdomainhere.internal//S-1-5-21-3122984950-2570546592-4150994639-1732
ourdomainhere.internal//S-1-5-21-3122984950-2570546592-4150994639-2026
ourdomainhere.internal//S-1-5-21-3122984950-2570546592-4150994639-1814
ourdomainhere.internal//S-1-5-21-3122984950-2570546592-4150994639-1722
ourdomainhere.internal//S-1-5-21-3122984950-2570546592-4150994639-1748
ourdomainhere.internal//S-1-5-21-3122984950-2570546592-4150994639-1730
ourdomainhere.internal//S-1-5-21-3122984950-2570546592-4150994639-1953
ourdomainhere.internal//S-1-5-21-3122984950-2570546592-4150994639-1836


rhys@ourdomainhere.internal


```

This would be a useful feature to have as with more companies moving to a more "serverless" / "cloud-native" (insert your favourite buzzword here) it is becoming less common to an easy way to connect to the user directory with LDAP.

Contributor guide

Open the contributing guide

Research direction

Start by locating the existing LDAP group handling and the SAML attribute parsing or authentication entry points. Define how the multi-valued SAML groups attribute should map to account or domain access, then verify that those links provide the same access behavior as LDAP groups.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
authentication, authorization
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.