cloudfoundry / cloudfoundry/cloud_controller_ng

Allow Space Managers to onboard Space Developers

Open
#3,416 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature-request unscheduled
Dominant language
Ruby
Stars
207
Forks
373
Avg merge
2d 12h
Merged PRs (30d)
56

Description

Issue

Following the "Best Practices for SAP BTP" guide on setting up your account model, you end up with orgs hosting multiple applications/projects that are separated in different spaces.
To allow project teams to manage their development teams autonomously, a Space Manager should be able to onboard/offboard a Space Developer without needing to involve a central team (Org Managers) as it poses a bottle neck and requires manual communication processes (email, dm ...).

Today, this is not possible, because no Space role can be assigned by the Space Manager, if the user to added does not have a role on the Org already (which the Space Developer cannot grant themselves).

From cloudfoundry/cloud_controller_ng#3377 I understand that this is by design?

The V2 API assigned the organization_user automatically when assigning any org or space role to a user. V3 does not do so anymore (which is good).

Similarly, the documentation on "Orgs, spaces, roles, and permissions in Cloud Foundry" reads:

In the v2 Cloud Controller API, when an Org Manager gives a person an Org or Space role, that person automatically receives Org User status in that org. This is no longer the case in the V3 Cloud Controller API.

Expected result

A user with Space Manager role can grant/revoke Space Developer role for a space on a user who has no role in the parent Org yet.

Possible Fix

Differentiate between Org User role that is explicitly granted and Org User role that is granted implicitly by having a role in a child Space (so that "Implicit Org User role" can be cleaned up when the last Space level role is revoked).

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 with the V3 API role-assignment behavior described here and compare it with cloudfoundry/cloud_controller_ng#3377 and the Cloud Foundry roles documentation. Confirm the desired behavior for granting and revoking Space Developer when no Org role exists, including cleanup of any implicit Org User role.

Written by the indexing model from the issue text.

Assessment

Tech stack
ruby
Domain
authorization, backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.