Fare la richiesta di nuovo progetto (in seguito TestProject) usando la solita procedura di CloudVeneto
openstack group create --domain default TestGroup |
Si puo` usare lo stesso nome per progetto e gruppo.
Il gruppo e` destinato a contenere solo utenti federati con IAM; non bisogna inserire utenti gestiti dall'integrazione con AAI |
openstack role add --project TestProject --project-domain default --group TestGroup --group-domain default Member |
Scaricare su file la situazione attuale del mapping per INFN-Cloud:
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)
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:
{
"local": [
{
"group": {
"name": "TestGroup",
"domain": {
"id": "default"
}
},
"user": {
"type": "ephemeral",
"name": "{0}_iam",
"email": "{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:
openstack mapping set --rules infn-cloud-map.json infn-cc-sso |
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 |
In cld-acct:
Quando viene creato un nuovo progetto per servizi su rete privata, va modificata la configurazione del VPN server:
[root@cld-config ~]# ssh ubuntu@90.147.77.114 ... ubuntu@infncloud-proxy-vpn:~$ sudo -i root@infncloud-proxy-vpn:~# |
Editare il file /etc/pam_oauth2_device/config.json aggiungendo in "groups" il gruppo IAM associato a questo progetto
Editare il file /etc/openvpn/server/server.conf agggiungendo una riga:
push "route 10.64.x.0 255.255.255.0" |
dove 0.64.x.0/24 e` la rete del nuovo progetto
Restartare poi il servizio:
systemctl restart openvpn-server@server.service |
Aumentare via dashboard la quota per security group (~100) e rules (~ 1000)
Eventuale modifica altre quote (CPU e RAM)