2015-02-02 10 views
7

sto provando a utilizzare lo strumento jhipster per creare un nuovo progetto con l'autenticazione oauth2. L'esempio del progetto funziona bene, posso accedere con l'interfaccia angularjs, ma non riesco a capire come posso creare un nuovo utente e quindi ottenere il token di accesso tramite la linea di comando di Curl per questo nuovo utente.jhipster oauth: Come posso ottenere l'access_token tramite CURL

Grazie per l'aiuto

risposta

9

Passo 1: registrare l'utente.

Registrare un utente allo http://localhost:8080/#/register e assicurarsi di poter accedere tramite l'interfaccia web.

Passaggio 2: ottenere un token OAuth2.

Informazioni necessarie per l'ottenimento di un token OAuth2:

  1. OAuth2 ID client (vedi application.yml)
  2. OAuth2 segreto (si veda application.yml)
  3. Il nome utente e la password utilizzati per registrare il nuovo utente .
  4. obiettivi necessari/s

Quindi, ottenere un token OAuth 2 dal server:

curl -X POST -vu client:secret http://localhost:8080/oauth/token -H "Accept: application/json" -d "username=username&password=password&grant_type=password&scope=read&client_id=clientid&client_secret=secret" 

.. restituisce qualcosa di simile:

{"access_token":"7916d326-0f7f-430f-8e32-c5135a121052","token_type":"bearer","refresh_token":"2c69ca58-a657-4780-b5d8-dc965d518e9e","expires_in":1037,"scope":"read"} 

Step # 3: Utilizzo il token nelle chiamate alle risorse protette:

Quindi, il token di autenticazione deve essere fornito in t he header su ogni chiamata:

curl http://localhost:8080/app/rest/books -H "Authorization: Bearer 7916d326-0f7f-430f-8e32-c5135a121052" 
+0

Grazie Rori !!!! – fontanellif

+0

Rori, ho un altro problema. Ora ho distribuito un server e sto cercando di ottenere access_token via ajax da un'altra interfaccia (nessuna interfaccia jhipster). Qui puoi trovare il mio codice: https://jsfiddle.net/rpdyr97j/2/ Puoi aiutarmi? – fontanellif