Как работают роли в Keyrock?
Я хочу знать, как работает авторизация на основе ролей в FIWARE Keyrock. Я протестировал сценарий, когда пользователь A регистрирует приложение appA в Keyrock. Пользователь B, которого нет в списке авторизованных приложений appA, может запросить токен для другого приложения (например, appB) и успешно получить доступ к appA с токеном, полученным из appB.
Другой выполненный тест должен был включить пользователя A в список авторизованных для appA, но с ролью, у которой нет разрешений. Опять же, пользователь A получает доступ к appA с учетными данными из другого приложения.
Может кто-нибудь объяснить мне, как это работает, если это действительно работает?
1 ответ
Как сказал @Álvaro в комментариях, мы можем увидеть пример этой конфигурации на этом видео.
Когда я видел это видео, ранее, я проигнорировал точную часть конфигурации разрешений в Keyrock, потому что это не представляло моего интереса. Теперь я заинтересован в этой функциональности, и я забыл, что это видео представляет такую информацию.
Кроме того, ниже я помещаю то, что я должен был сделать для работы вещей:
Установите AZF:
- sudo apt-get установить openjdk-7-jdk (если у вас его нет)
- sudo apt-get установить tomcat7
- wget http://repo1.maven.org/maven2/org/ow2/authzforce/authzforce-ce-server-dist/5.4.1/authzforce-ce-server-dist-5.4.1.deb (authzforce)
- sudo apt-get установить gdebi curl
- sudo gdebi authzforce-ce-server-dist-5.4.1.deb
Настроить Вильма Пепconfig.js
файл):
config.azf = {
enabled: true,
protocol: 'http',
host: '10.30.0.21', //this is your authzforce ip
port: 8080, //6019,
custom_policy: undefined // use undefined to default policy checks (HTTP verb + path).
};
Настроить Keyrock (local_settings.py
файл, расположенный в /horizon/openstack_dashboard/local/local_settings.py
)
ACCESS_CONTROL_URL = 'http://10.30.0.21:8080'
ACCESS_CONTROL_MAGIC_KEY = None # If you have problems, put something instead of None. Currently there is a reported bug related to this.
Не забудьте перезапустить сервисы. Чтобы все заработало, вам нужно создать специальное разрешение для нужной конечной точки приложения, которое вы хотите защитить / получить к нему доступ. Как только он будет создан, AZF проконсультируется с доверенным лицом PEP Вилмы.
Надеюсь, это кому-нибудь поможет.