7
votes

Comment obtenir un jeton OpenStack et la valider?

J'ai suivi ce guide: http://keystone.openstack.org/api_curl_examples.html

Et il semblait avoir eu un jeton valide par Ran: xxx

et il est renvoyé: xxx

mais Quand je suis arrivé aux prochaines sections pour valider ce jeton, j'ai rencontré ce numéro de magie: x-auth-jeton: 999888777666 . au début, je pensais que c'est le gage que j'ai eu, mais j'avais mal http://keystone.openstack.org/configuration.html "rel =" noreferrer "> http://keystone.openstact.org/configuration.html et http://docs.openstack.org/api/openstack-compute/programmer/content/ ), mais toujours aucune idée Comment le nombre provient de.

Quelqu'un pourrait-il m'expliquer

  1. Quelle est la signification de ce nombre magique
  2. Comment obtenir la bonne valeur de celui-ci afin que je puisse obtenir un jeton de travail pour gérer d'autres parties de OpenStack

1 commentaires

Est-il possible de demander par ajax pas par CURL ..?


3 Réponses :


1
votes

Le jeton lui-même est dans dict ["accès"] ["jeton"] ["id"] code> qui est cette partie qui ira dans l'en-tête des demandes HTTP ultérieures, c'est-à-dire

X-Auth-Token: 468da447bd1c4821bbc5def0498fd441


2 commentaires

J'ai dit que ce n'est pas le gage. J'ai essayé de cette façon: curl -h "x-auth-jeton: 468da447bd1c4821bbc5def0498fd441" URL: 35357 / V2 .0 / jetons / 468DA447BD1C4821BBC5DEF0498FD441 et obtenu un 401 non autorisé


HRM - Ouais, l'origine du 999 * jeton n'a pas beaucoup de sens dans les documents. La demande de courbure ci-dessus devrait fonctionner, bien que le keystone.openstack.org/api_curl_examples.html tutoriel semble Pour impliquer que vous devez vous connecter à un compte administrateur pour accéder à la ressource / jetons. Pouvez-vous accéder à d'autres choses avec votre jeton? E.G URL: 35357 / V2.0 / locataires



9
votes

Ce numéro de magie (chaîne vraiment) est le paramètre Admin_Token dans votre fichier Keystone.conf. Sous la section [Par défaut] dans Keytstone.conf Set xxx pré>

Si vous ne l'utilisez pas pour les actions de l'administrateur, vous verrez quelque chose comme P>

ubuntu@i-000004bc:~/devstack$ curl -H "X-Auth-Token: abcd1234" http://localhost:35357/v2.0/tenants
{"tenants_links": [], "tenants": [{"enabled": true, "description": null, "name": "demo", "id": "aee8a46babcb4e4286021c8f6ef996cd"}, {"enabled": true, "description": null, "name": "invisible_to_admin", "id": "de17fea45de148ada0a58e998e6c3e73"}, {"enabled": true, "description": null, "name": "admin", "id": "f34b0c8ab30e450489b121fbe723fde5"}, {"enabled": true, "description": null, "name": "service", "id": "fbe3e2e530fd47298cb2cba1b4afa3da"}]}


1 commentaires

Notez que si vous avez un nom d'utilisateur valide avec un rôle d'administrateur dans un locataire, vous pouvez utiliser ce nom d'utilisateur et ce mot de passe pour récupérer un jeton temporaire permettant aux actions d'administrateur.



2
votes

Pour obtenir la liste des locataires, dans notre mise en œuvre actuelle, nous vous authentifions avec les informations d'identification d'administration et utilisez le jeton renvoyé pour obtenir la liste des locataires. La mise en œuvre fonctionne avec le jeton d'authentification. Cela peut fonctionner avec Admin_Token mais je n'ai pas vérifié.

Si vous voyez les exemples, vous vous référez à, il existe 2 types de points d'extrémité utilisés

  1. Point de terminaison pointant vers le port 5000 - Port public
  2. Point de terminaison pointant vers le port 35357 - Port d'administration

    Dans les exemples qui frappent le port d'administrateur, vous devez spécifier l'en-tête "X-Auth-Auth-jeton" en tant qu'admin_Token (spécifié dans le fichier Keystone.conf)


0 commentaires