RoleBinding

Un RoleBinding permet d’attribuer des rôles à un ou plusieurs utilisateurs au niveau d’une Organisation, et/ou sur des Workspaces appartenant à cette Organisation.

Description

RoleBinding est le schéma pour l’API RoleBinding. Il associe un utilisateur (ou un ensemble d’utilisateurs via des labels) à des rôles d’Organisation et/ou à des rôles sur un ensemble de Workspaces de l’Organisation.

  • Les champs email, name et matchLabels de userRef sont mutuellement exclusifs. Un seul peut être défini.
  • Lorsque userRef.matchLabels retourne plusieurs utilisateurs, tous reçoivent les rôles définis.
  • Les Workspaces référencés doivent appartenir à l’Organisation cible.

Spécification

Champ Type Description Requis Défaut
spec.parameters.organizationRoles array Liste des rôles à attribuer au niveau de l’Organisation. Non []
spec.parameters.organizationRoles[].name string Nom du rôle d’Organisation à attribuer. Oui (si présent) -
spec.parameters.userRef object Référence à un utilisateur ou un ensemble d’utilisateurs. Oui -
spec.parameters.userRef.email string Email de l’utilisateur référencé (sélectionne un seul utilisateur). Oui (si utilisé) -
spec.parameters.userRef.name string metadata.name de la ressource User (sélectionne un seul utilisateur). Oui (si utilisé) -
spec.parameters.userRef.matchLabels object Sélecteur de labels pour sélectionner plusieurs utilisateurs. Oui (si utilisé) {}
spec.parameters.workspaceRoles array Rôles à attribuer sur un ou plusieurs Workspaces de l’Organisation. Non []
spec.parameters.workspaceRoles[].name string Nom du rôle à attribuer sur les Workspaces ciblés. Oui (si présent) -
spec.parameters.workspaceRoles[].workspaceRef object Référence aux Workspaces ciblés. Oui (si workspaceRoles défini) -
spec.parameters.workspaceRoles[].workspaceRef.name string Nom d’un Workspace unique. Oui (si utilisé) -
spec.parameters.workspaceRoles[].workspaceRef.matchLabels object Labels pour sélectionner plusieurs Workspaces appartenant à l’Organisation. Oui (si utilisé) {}

Exemple

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
apiVersion: org.fabrique.social.gouv.fr/v1alpha1
kind: RoleBinding
metadata:
  name: my-rolebinding
# RoleBindingSpec defines the desired state of RoleBinding.
# For Atlas users, only the "parameters" field is relevant.
spec:
  parameters:
    # Roles to give on the organization.
    organizationRoles:
      - name: string
    # A reference to an existing users.
    # Users can be referenced either by email, resource name, or matching labels.
    # email and resource name select only one user, while the matching labels can return
    # multiple users.
    #
    # The email, name and matchLabels are mutually exclusive, only one of them should be set.
    userRef:
      # The email of the referenced user.
      email: string
      # A labels selector. All users matching the given labels will be returned.
      matchLabels: {}
      # The metadata.name of the referenced User resource.
      name: string
    # Roles to give on Workspaces belonging to the Organization.
    workspaceRoles:
      - name: string
        # A reference to one or multiple Workspaces.
        # All Workspaces must belong to the Organization.
        workspaceRef:
          # Labels to filter the Workspaces.
          # All Workspaces that belong to the Organization
          # and match the labels will be returned.
          matchLabels: {}
          # Name of the referenced Workspace.
          name: string

Notes importantes

  • userRef.email, userRef.name et userRef.matchLabels sont exclusifs : ne renseignez qu’un seul de ces champs.
  • workspaceRef.matchLabels peut sélectionner plusieurs Workspaces. Tous doivent appartenir à l’Organisation.
  • Les rôles d’Organisation et de Workspace peuvent être combinés dans un même RoleBinding.

Paramètres d’affichage

Choisissez un thème pour personnaliser l’apparence du site.

Paramètres d’affichage

Choisissez un thème pour personnaliser l’apparence du site.