我花了大部分时间尝试配置Fiware PEP代理Wilma来保护我在开发服务器上运行的Orion Context Broker。这里的文档:http://forge.fiware.org/plugins/mediawiki/wiki/fiware/index.php/PEP_Proxy_-Wilma-_Installation_and_Administration_Guide不清楚。
这是我的设置:
手册指出要编辑config.js脚本。这是我改变了(Stackoverflow阻止我输入url,所以用http替换http ..)
config.account_host = 'http..//localhost:3000';
config.keystone_host = 'http..//server1';
config.keystone_port = 3000;
config.app_host = 'server2';
config.app_port = '1026';
config.username = '***** username of the user in Keyrock *****';
config.password = '***** password of the user in Keyrock *****';
这是错误
〜/ fi-ware-pep-proxy $ node server.js 表示已弃用的app.configure: 检查if语句server.js中的app.get('env'):30:5启动PEP代理。 Keystone身份验证...梯形失真通信出错 错误:getaddrinfo ENOTFOUND 在errnoException(dns.js:37:11) 在Object.onanswer [as oncomplete](dns.js:124:16)
My Orion和Keyrock实例已启动并正在运行。我可以用curl或浏览器查询它们。
我真的不知道我应该在config.js中填写什么来设置它。
答案 0 :(得分:3)
我希望这会有所帮助。我们正在使用docker和docker-compose来部署一些通用启动器,包括IdM,Wilma PEP和Orion等。
这个名为Fiware-devguide-APP的环境实际上正在建设中,但您可以测试环境(已经工作)并检查我们的配置here。
我们正在更新所有文档!
为此,我们有图片here。
需要Docker和docker-compose。
如果您已经拥有它们,要启动Devguide中集成的所有应用程序,您只需要克隆存储库:
git clone https://github.com/Bitergia/fiware-devguide-app.git
然后使用fiware-devguide-app / docker / compose中的.yml
文件运行docker-compose:
docker-compose -f docker-compose.yml up -d
所以你将拥有所有的容器!最后,将devguide容器的ip(compose_devguide_1)添加到您的/etc/hosts
,然后您就可以浏览它了:)
我们已经完成了几个配置。我假设您对IdM和Wilma PEP感兴趣,所以这就是我们所做的:
我们从头开始安装了一个IdM GE,提供了所需的用户,角色和权限。在这里,您可以找到我们在test_data
method添加的内容:
注意所有这些规定也可以使用Keystone REST API
完成此外,您还可以找到Dockerfile,即它是如何安装的。
我们为角色管理安装了Authzforce,如导游guide中所述。您将需要它,因为wilma-pep将发送PDP请求以验证针对受保护资源的请求。
最后是PEP Wilma。 Here您可以找到配置文件。
这就是诀窍。让我们假设env Authzforce(访问控制),IdM,PEP Wilma,Orion(要保护的应用程序)和devguide。当我们使用docker-compose时,所有这些步骤几乎同时完成! :)
在authzforce中,我们需要在documentation中创建一个域,我们这样做here。
config.js
很简单:
account_host
和keystone_host
位于同一容器“idm”中。 Docker-compose通过向每个容器的/etc/hosts
添加别名来处理这个问题,这使得该过程变得更加容易,我们不需要自己处理IP。app_host
和app_port
是要保护的应用的IP和端口,在我们的例子中是'orion'!config.username
和config.password
。我们在之前解释过的条款中创建了一个用户'pepproxy',正是here。 (注意,此用户必须分配domain roles
才能正常工作,完成here)。azf
配置,其中还包含'authzforce'主机以及解析路径的位置,如前所述。将authzforce配置添加到IdM和PEP(即域)
获取Oauth2令牌,因为它解释了here。
最后,使用此令牌并运行一切,您可以打开compose_devguide_1
。根据您在IdM分配的角色,它可以使用不同的资源。例如,'user0@test.com'可以访问所有资源,同时另一个可以访问餐馆。
希望我足够清楚。
最佳!
答案 1 :(得分:0)
目前,PEP的请求不会直接发送给IdM。他们使用Openstack兼容服务器(Keystone Proxy)。因此,如果您想使用它,您还必须安装此组件。我们将在两周内以任何方式改变这种行为。
希望这有帮助
答案 2 :(得分:0)
我们正在本地机器上安装Fiware环境;我们假装有一个带有Keyrock idm实例的猎户座上下文代理。我们知道我们需要使用Pep代理来检查对orion上下文代理的请求令牌。我们使用Keyrock idm,所以我们想知道我们是否可以这样做。有没有办法在没有安装任何其他东西的情况下使用它们,或者我们也应该安装de keystone代理?
这是我们找到的keystone代理:
https://github.com/ging/fi-ware-keystone-proxy
如果是这样的话;我们如何配置pep代理?我们在哪里必须将数据连接到Keyrock idm以及我们应该在哪里指示keystone信息?
答案 3 :(得分:0)
新版本准备就绪。现在你只需要Keyrock和PEP代理。正如所解释的here验证直接转到IdM。希望这会有所帮助。