cosmos auth 和 Identity manager 集成的问题
Problems with cosmos auth and Identity manager integration
我想将 cosmos-auth 与 Idm GE 集成。
node.js 应用程序的配置是:
{
"host": "192.168.4.180",
"port": 13000,
"private_key_file": "key.pem",
"certificate_file": "cert.pem",
"idm": {
"host": "192.168.4.33",
"port": "443",
"path": "/oauth2/token"
},
"cosmos_app": {
"client_id": "0434fdf60897479588c3c31cfc957b6d",
"client_secret": "a7c3540aa5de4de3a0b1c52a606b82df"
},
"log": {
"file_name": "/var/log/cosmos/cosmos-auth/cosmos-auth.log",
"date_pattern": ".dd-MM-yyyy"
}
}
当我将 HTTP POST 请求直接发送到 IDM GE 到 url
https://192.168.4.33:443/oauth2/token
使用必需的参数我得到了好的结果:
{
access_token: "LyZT5DRGSn0F8IKqYU8EmRFTLo1iPJ"
token_type: "Bearer"
expires_in: 3600
refresh_token: "XiyfKCHrIVyludabjaCyGqVsTkx8Sf"
}
但是当我 curl cosmos-auth node.js 应用程序时
curl -X POST "https://192.168.4.180:13000/cosmos-auth/v1/token" -H
"Content-Type: application/x-www-form-urlencoded" -d
"grant_type=password&username=idm&password=idm" -k
我得到下一个结果:
{"statusCode":500,"error":"Internal Server Error","message":"An internal server error occurred"}
有没有人遇到过类似的情况?
可能是什么问题?
我犯的错误是使用 unsigned certificate.How 我笨手笨脚的。
因此,要么签署证书,要么在选项对象中插入附加元素 (rejectUnauthorized: false)
var options = {
host : host,
port : port,
path : path,
method : method,
headers: headers,
rejectUnauthorized: false
};
或者在文件开头插入:
process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0';
当然,在我们使用完全签名的证书之前,这只是临时解决方案。
无论如何,错误处理和 cosmos-auth 中的日志 node.js 应用程序应该显示更多。
我想将 cosmos-auth 与 Idm GE 集成。 node.js 应用程序的配置是:
{
"host": "192.168.4.180",
"port": 13000,
"private_key_file": "key.pem",
"certificate_file": "cert.pem",
"idm": {
"host": "192.168.4.33",
"port": "443",
"path": "/oauth2/token"
},
"cosmos_app": {
"client_id": "0434fdf60897479588c3c31cfc957b6d",
"client_secret": "a7c3540aa5de4de3a0b1c52a606b82df"
},
"log": {
"file_name": "/var/log/cosmos/cosmos-auth/cosmos-auth.log",
"date_pattern": ".dd-MM-yyyy"
}
}
当我将 HTTP POST 请求直接发送到 IDM GE 到 url
https://192.168.4.33:443/oauth2/token
使用必需的参数我得到了好的结果:
{
access_token: "LyZT5DRGSn0F8IKqYU8EmRFTLo1iPJ"
token_type: "Bearer"
expires_in: 3600
refresh_token: "XiyfKCHrIVyludabjaCyGqVsTkx8Sf"
}
但是当我 curl cosmos-auth node.js 应用程序时
curl -X POST "https://192.168.4.180:13000/cosmos-auth/v1/token" -H
"Content-Type: application/x-www-form-urlencoded" -d
"grant_type=password&username=idm&password=idm" -k
我得到下一个结果:
{"statusCode":500,"error":"Internal Server Error","message":"An internal server error occurred"}
有没有人遇到过类似的情况? 可能是什么问题?
我犯的错误是使用 unsigned certificate.How 我笨手笨脚的。 因此,要么签署证书,要么在选项对象中插入附加元素 (rejectUnauthorized: false)
var options = {
host : host,
port : port,
path : path,
method : method,
headers: headers,
rejectUnauthorized: false
};
或者在文件开头插入:
process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0';
当然,在我们使用完全签名的证书之前,这只是临时解决方案。 无论如何,错误处理和 cosmos-auth 中的日志 node.js 应用程序应该显示更多。