[英]Configuring Orion Context Broker, Wilma PEP Proxy and Keyrock IdM
[英]Fiware - How to integrate Keyrock IdM, Wilma PEP Proxy and Orion Context Broker?
我閱讀了Keyrock和Wilma的所有文檔,並且在FIWARE學院觀看了所有視頻,但是在這種集成中我仍然沒有成功。 從幾天前開始,我一直在搜索,但是沒有成功。 我認為FIWARE文檔可能會有教程,動手實踐...
我有一個帶有Orion上下文代理的VM,一個帶有Keyrock IdM和Wilma PEP代理的容器。 我正在嘗試生成訪問令牌以授予對應用程序的訪問權限,但是我仍然沒有得到它。 此外,我想知道如何在Orion Context Broker和某些IoT設備之間安全地交換消息。 確實,像Keyrock IdM示例所示,考慮物聯網設備必須訪問屏幕並放置其憑據進行身份驗證和授權很復雜。 你什么意思?
關於Orion,取決於要保護的接口,或者是服務API(即Orion通常在端口1026運行的偵聽REST服務器),通知API或同時滿足以下兩者:
更新:從版本1.7.0開始,Orion實施本機HTTPS通知(即無需Rush)。
在這里看到@albertinisg的答案,我找到了一個用於令牌請求的bash腳本 。 我將其更改為與本地實例一起使用,並且可以正常工作。
在FIWARE Portal上注冊我的應用程序后( 在此處了解更多信息 ),我不得不向http:// idm:8000 / oauth2 / token (idm是Keyrock的本地實例)發出POST請求。 有了這個有效的令牌,我就可以訪問Orion中的內容。
import requests, json, getpass
TOKEN_URL = "http://idm:5000/v2.0/tokens"
USER = raw_input("Username: ")
PASSWORD = getpass.getpass("Password: ")
PAYLOAD = "{\"auth\": {\"passwordCredentials\": {\"username\":\""+USER+"\", \"password\":\""+PASSWORD+"\"}}}"
HEADERS = {'content-type': 'application/json'}
RESP = requests.post(TOKEN_URL, data=PAYLOAD, headers=HEADERS)
PEP代理(Wilma)配置(config.js):
config.app_host = 'my_orion_ip'; //change to your Orion address
config.app_port = '1026'; //change to your Orion port
config.username = 'pep_proxy_credential_obtained_at_portal';
config.password = 'password_obtained_at_portal';
通過使用該配置運行有效令牌和PEP代理(Wilma)服務器,可以控制對Orion的訪問,並向PEP代理地址發出請求。 PEP代理會將此請求重定向到IdM(Keyrock),以便IdM可以驗證用戶/設備憑據。 如果憑據有效,則用戶/設備將收到有效令牌,並且現在PEP代理可以允許訪問Orion。
對於HTTPS通信,我將Nginx服務器配置為充當反向代理(.conf文件):
server {
listen 443;
server_name orion;
ssl on;
ssl_certificate /etc/nginx/ssl/orion.crt;
ssl_certificate_key /etc/nginx/ssl/orion.key;
...
...
location / {
#root orion:1026; #/var/www/yourdomain.com;
#index index.php index.html index.htm;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Fix the “It appears that your reverse proxy set up is broken" error.
proxy_pass http://orion:1026;
proxy_read_timeout 90;
proxy_redirect http://orion:1026 https://orion;
}
}
我做了一個有關FIWARE Orion,Wilma和Keyrock集成的簡單教程: https ://www.slideshare.net/daltoncezane/integrating-fiware-orion-keyrock-and-wilma
我希望這個答案可以幫助其他人。
以下演示逐步介紹了如何創建基於FIWARE的IoT平台以及如何使用PEP代理,Keystone和Keypass對其進行保護。
https://docs.google.com/presentation/d/18LaWZSK4h2wncPF6hNAwK5MToLvJesR3XLrzsqrsmrw/edit?usp=sharing
我希望這有幫助
謝謝
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.