mirror of
https://github.com/valitydev/wachter.git
synced 2024-11-06 00:35:24 +00:00
parent
a51554b84f
commit
e26ebdc879
@ -9,15 +9,14 @@
|
||||
2. Из сообщения запроса wachter получает
|
||||
[имя метода](https://github.com/valitydev/wachter/blob/master/src/main/java/dev/vality/wachter/service/MethodNameReaderService.java)
|
||||
3. В [KeycloakService](https://github.com/valitydev/wachter/blob/master/src/main/java/dev/vality/wachter/service/KeycloakService.java)
|
||||
wachter получает partyId и AccessToken.
|
||||
wachter получает AccessToken.
|
||||
4. По имени сервиса из header wachter
|
||||
[маппит](https://github.com/valitydev/wachter/blob/master/src/main/java/dev/vality/wachter/mapper/ServiceMapper.java)
|
||||
url, на который необходимо спроксировать запрос.
|
||||
5. Далее сервис проверяет возможность [авторизации](https://github.com/valitydev/wachter/blob/master/src/main/java/dev/vality/wachter/security/AccessService.java)
|
||||
пользователя в [bouncer](https://github.com/valitydev/bouncer),
|
||||
формируя [контекст](https://github.com/valitydev/wachter/blob/master/src/main/java/dev/vality/wachter/security/BouncerContextFactory.java)
|
||||
на основе [данных](https://github.com/valitydev/wachter/blob/master/src/main/java/dev/vality/wachter/security/AccessData.java),
|
||||
полученных из запроса. Контекст формируется с учетом фрагмента [wachter](https://github.com/valitydev/bouncer-proto/blob/master/proto/context_v1.thrift#L49)
|
||||
пользователя, сравнивая полученные названия сервиса и метода от [control-center](https://github.com/valitydev/control-center)
|
||||
с теми, что находятся в JWT токене. Доступ может быть разрешен как [ко всему сервису](https://github.com/valitydev/wachter/blob/master/src/main/java/dev/vality/wachter/security/RoleAccessService.java#L22),
|
||||
так и только к [отдельному методу](https://github.com/valitydev/wachter/blob/master/src/main/java/dev/vality/wachter/security/RoleAccessService.java#L22) сервиса.
|
||||
6. Если доступ разрешен, сервис [отправляет запрос](https://github.com/valitydev/wachter/blob/master/src/main/java/dev/vality/wachter/client/WachterClient.java)
|
||||
на ранее смаппленный урл.
|
||||
7. Полученный ответ [возвращает](https://github.com/valitydev/wachter/blob/master/src/main/java/dev/vality/wachter/controller/WachterController.java) control-center.
|
||||
|
File diff suppressed because one or more lines are too long
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 39 KiB |
Loading…
Reference in New Issue
Block a user