“未为应用程序创建AZF域”AuthZforce

时间:2016-11-09 17:51:55

标签: fiware authz pdp authzforce

我有一个使用KeyRock,PEP,PDP(AuthZForce)的应用程序。

Keyrock和PEP的安全级别1(身份验证)正在运行,但是当我们尝试使用AuthZForce检查授权时,我收到错误消息:

AZF domain not created for application

我按照Fiware IdM用户和程序员指南中的步骤创建了我的用户和应用程序。

我也可以按照AuthZForce - 安装和管理指南中的说明创建域,但我不知道在创建域ID时如何将域ID与用户角色绑定。

那么,我如何在特定域下插入用户/组织/应用程序,然后具有安全级别2?

我的config.js文件:

config.azf = {
    enabled: true,
    host: '192.168.99.100',
    port: 8080,
    path: '/authzforce/domains/',
    custom_policy: undefined  
};

我的docker-compose.yml文件是:

authzforce:
    image: fiware/authzforce-ce-server:release-5.4.1
    hostname: authzforce
    container_name: authzforce
    ports:
      - "8080:8080"

keyrock:
    image: fiware/idm:v5.4.0
    hostname: keyrock
    container_name: keyrock 
    ports:
        - "5000:5000"
        - "8000:8000" 

pepproxy:
    build: Docker/fiware-pep-proxy
    hostname: pepproxy
    container_name: pepproxy
    ports:
        - 80:80
    links:
        - authzforce
        - keyrock 

这个问题与AuthZForce Security Level 2: Basic Authorization error "AZF domain not created for application"相同,但我得到了同样的错误,我的keyrock版本是v5.4.0。

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:1)

在查看地平线源代码后,我发现函数" policyset_update"在 openstack_dashboard / fiware_api / access_control_ge.py 中,如果ACCESS_CONTROL_MAGIC_KEY为None(默认配置)或空字符串,则返回inmediatly,因此与AuthZForce的通信永远不会发生。尽管当您在PEP代理服务器后面没有AuthZForce时,此参数是可选的,但您必须输入一些文本以避免此错误。

在您的情况下,您的字符串' undefined'做了工作。事实上,作为结果,一个' X-Auth-Token:undefined'生成,但当horizo​​n与AuthZForce直接通信时被忽略。

相关主题:Fiware AuthZForce error: "AZF domain not created for application"