Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Fare la richiesta di nuovo progetto (in seguito TestProject) usando la solita procedura di CloudVeneto

Creazione e associazione di un gruppo

  • Si deve creare un gruppo da associare al precendente progetto (in seguito TestGroup) con: 
    No Format
    openstack group create --domain default TestGroup

     Si puo` usare lo stesso nome per progetto e gruppo.

    Warning

    Il gruppo e` destinato a contenere solo utenti federati con IAM; non bisogna inserire utenti gestiti dall'integrazione con AAI

  • Si deve infine assegnare il ruolo Member al gruppo per il progetto in questione con: 
    No Format
    openstack role add --project TestProject --project-domain default --group TestGroup --group-domain default Member

Federare il nuovo progetto con il corrispondente gruppo IAM

  • Scaricare su file la situazione attuale del mapping per INFN-Cloud: 

    No Format
    openstack mapping show -f json -c rules infn-cc-sso > infn-cloud-map.json

    dal file infn-cloud-map.json bisogna rimuovere la radice "rules" e tenere solo il valore (array) contenuto fra le parentesi quadre (comprese)

    Warning

    E` consigliato salvare un backup del file infn-cloud-map.json, nel caso fosse necessario ripristinare il mapping originario. Al  momento non ci sono meccanismi di backup per l'insieme di regole memorizzate in Keystone.


  • Aggiungere una nuova regola nel file infn-cloud-map.json seguendo questo modello: 

    No Format
        {
          "local": [
            {
              "usergroup": {
                "typename": "ephemeralTestGroup",
                "namedomain": "{0}_iam",
                  "emailid": "{1}default"
              }
            },
            {
      },
                 "projectsuser": [
                {
                  "nametype": "nome-del-progetto-in-CloudVenetoephemeral",
                  "rolesname": [
                    {"{0}_iam",
                      "name"email": "Member{1}"
                    }
                  ]
                }
              ]
            }
          ],
          "remote": [
            {
              "type": "OIDC_CLAIM_preferred_username"
            },
            {
              "type": "OIDC_CLAIM_email"
            },
            {
              "type": "OIDC_CLAIM_iss",
              "any_one_of": [
                "https://iam.cloud.infn.it/"
              ]
            },
            {
              "regex": true,
              "type": "OIDC_CLAIM_groups",
              "any_one_of": [
                "regular-expression-per-il-gruppo-in-IAM"
              ]
            }
          ]
        },
    
    

    Una regular expression per il gruppo in genere e` del tipo ".*stringa.*", ad esempio: ".*developers.*" o ".*ml-infn.*"


  • Aggiornare Keystone con le nuove regole: 

    No Format
    openstack mapping set --rules infn-cloud-map.json infn-cc-sso


  • Testare usando le istruzioni disponibili in https://baltig.infn.it/infn-cloud/wp1/cloud-federation-preliminary-checks#check-of-oidc-authentication

Utente infn-cloud-ops

Code Block
languagebash
openstack role add --user infn-cloud-ops --project $project member
openstack role add --user infn-cloud-ops --project $project accounting
openstack role assignment list --user infn-cloud-ops --names

...