Skip to content

Identifiants d'Application

Warning

Il est recommandé de créer un identifiant Openstack d'application et de ne pas persister sur disque son identifiant/authentifiant personnel.
Un identifiant Openstack d'application possède, au plus :
- les droits du compte pour lequel il a été créé,
- uniquement sur le périmètre du projet dans lequel il a été créé.
Utiliser des identifiants d'application est donc important pour restreidre la portée de nos actions.

Création

$ openstack application credential create

Configuration

Tip

C'est une bonne pratique dans notre fichier de configuration Openstack de nommer nos entrées en tenant compte de l'application, du projet, du domaine sur lequel on s'authentifie (default, stratuslab...),
de l'instance Openstack sur laquelle on déploie (test, production...)
ainsi que du site opérant cette instance (virtualdata, gricad...)

$ cat ${HOME}/.config/openstack/clouds.yaml
1
2
3
4
clouds:
...
  <APPLICATION>.<PROJECT>@<DOMAIN>.<INSTANCE>.<SITE>:
...
$ cat ${HOME}/.config/openstack/clouds.yaml
1
2
3
4
5
6
7
8
9
clouds:
...
  <APPLICATION>.<PROJECT>@<DOMAIN>.<INSTANCE>.<SITE>:
    auth_type: v3applicationcredential
    auth:
       auth_url: <AUTH_URL>
       application_credential_id: <APPLICATION_CREDENTIAL_ID>
       application_credential_secret: <APPLICATION_CREDENTIAL_SECRET>
...

Exemple

$ cat ${HOME}/.config/openstack/clouds.yaml
1
2
3
4
5
6
7
8
9
clouds:
...
  continuous-integration.resinfo-discotech@stratuslab.production.virtualdata:
    auth_type: v3applicationcredential
    auth:
      auth_url: https://keystone.lal.in2p3.fr:5000/v3
      application_credential_id: abcdef01234567890abcdef0123456789
      application_credential_secret: p868jk_HM_UjtApyp3iuBXkXc8DlmNxK1o7ViC8WEcCKNTFz2FUIZxNybSy3UsV-Iwq6JLC1X0IR45hxkdUdnA
...