我有一个节点服务器,它需要连接到受IAP(身份识别代理)保护的API端点。以下来自Google的示例似乎很好地期望了certificate has expired
错误。我相信我只需要随请求一起发送rejectUnauthorized: false
,但不确定如何实现。
我能够强迫它与添加process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0';
一起使用,但是据我了解,与rejectUnauthorized: false
相比,此选项更加不安全。有见识吗?
'use strict';
const {JWT} = require('google-auth-library');
const keys = require('./jwt.keys.json');
const oauth2Keys = require('./iap.keys.json');
async function main() {
const clientId = oauth2Keys.web.client_id;
const client = new JWT({
email: keys.client_email,
key: keys.private_key,
additionalClaims: {target_audience: clientId},
});
const url = `https://iap-demo-dot-el-gato.appspot.com`;
const res = await client.request({url});
console.log(res.data);
}
main().catch(console.error);
答案 0 :(得分:1)
process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0';
禁用SSL证书检查。