Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Konto admina
- login: admin
- hasło: admin123
- Logowanie apka webowa (OAuth2 implicit)
- 1. Użytkownik klika zaloguj w aplikacji
- 2. Przekierowuje go pod url http://localhost:8080/oauth/authorize?client_id=web-client&response_type=token&redirect_uri=http://localhost:3000/success_login
- 3. Wyświetla się formularz do zalogowania, użytkownik wprowadza dane i klika sign in
- 4. Przekierowuje z powrotem do apki pod adres http://localhost:3000/success_login#access_token=<token>&token_type=bearer&expires_in=<czas>&scope=read%20write
- 5. Klient zapisuje token z urla w cookies, ustawia ważność ciastka (też z urla)
- ----ZAPYTANIA DO ENDPOINTÓW----
- header:
- key:
- Authorization value:Bearer <access_token>
- body:
- to co potrzeba dla danego zapytania
- Logowanie android (OAuth2 resource owner password credentials)
- POST /oauth/token - pobranie tokena do uwierzytelniania się
- header:
- key:Authorization value:bW9iaWxlLWNsaWVudDptb2JpbGVAY2xpZW50 (to jest mobile-client:mobile@secret w base64)
- body:
- key:grant_type value:password
- key:username value:<login użytkownika>
- key:password value:<hasło użytkownika>
- Przykładowy zwrócony json:
- {
- "access_token": "4951f9b8-26d8-446d-97d3-e981482b4c40",
- "token_type": "bearer",
- "refresh_token": "3f5eb36a-0518-4ade-a01b-6ee2bafcdbb0",
- "expires_in": 3599,
- "scope": "read write"
- }
- Zapisujemy access_token i refresh_token.
- Przy wysyłaniu zapytań do zabezpieczonych endpointów wysyłamy access_token, w ten sposób jesteśmy autoryzowani
- ----ZAPYTANIA DO ENDPOINTÓW----
- header:
- key:Authorization value:Bearer <access_token>
- body:
- to co potrzeba dla danego zapytania
- ----POBIERANIE ACCESS TOKENA Z UŻYCIEM REFRESH TOKENA
- Aby zapamiętać użytkownika można zapisać w shared preferences refresh token. Refresh token nie traci ważności w przeciwieństwie do access tokena.
- Przy każdym odpaleniu apki wysyłany jest refresh token do serwera, w odpowiedzi dostajemy access token i mamy dostęp do endpointów
- POST /oauth/token
- header:
- key:Authorization value:<klucz w base64>
- body:
- key:grant_type value:refresh_token
- key:refresh_token value:<refresh token>
- POST /users - rejestracja użytkownika
- Przykładowy json przekazywany w body:
- {
- "username" : "user1",
- "password" : "@user1@"
- }
- GET /test - zadziała przy przesłaniu access tokena w headerze
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement