2015-02-02 19 views
7

Próbuję użyć narzędzia jhipster w celu utworzenia nowego projektu z uwierzytelnianiem oauth2. Przykład projektu działa dobrze, mogę zalogować się za pomocą interfejsu angularjs, ale nie rozumiem, jak mogę utworzyć nowego użytkownika, a następnie uzyskać token dostępu za pośrednictwem wiersza polecenia Curl dla tego nowego użytkownika.jhipster oauth: Jak mogę uzyskać access_token przez CURL

Dziękujemy za pomoc

Odpowiedz

9

Krok 1: Zarejestruj użytkownika.

Zarejestruj użytkownika pod numerem http://localhost:8080/#/register i upewnij się, że możesz zalogować się za pomocą interfejsu internetowego.

Krok nr 2: Uzyskaj token OAuth2.

Informacje wymagane do uzyskania tokenu OAuth2:

  1. OAuth2 identyfikator klienta (patrz application.yml)
  2. OAuth2 tajny (patrz application.yml)
  3. Nazwa użytkownika i hasło używane do zarejestrowania nowy użytkownik .
  4. Wymagany zakres/s

Następnie uzyskać OAuth 2 token z serwerem:

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" 

.. zwraca coś takiego:

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

Krok 3: Użycie token w połączeniach z chronionymi zasobami:

Następnie token autoryzacji musi być dostarczany wt on nagłówek przy każdym wywołaniu:

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

Dzięki Rori !!!! – fontanellif

+0

Rori, mam inny problem. Teraz wdrożyłem serwer i próbuję uzyskać access_token przez ajax z innego interfejsu (bez interfejsu jhipster) Tutaj możesz znaleźć mój kod: https://jsfiddle.net/rpdyr97j/2/ Czy możesz mi pomóc? – fontanellif