最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

如何使用.env存储用于JWT的JSON密钥?

IT培训 admin 11浏览 0评论

如何使用.env存储用于JWT的JSON密钥?

我正在使用Google Analytics(分析)API,并且需要传递我被赋予制作JWT的json密钥。但是,我希望将密钥信息存储在.env文件中,而不是从.json文件中访问密钥。

我的挣扎是无法读取我的.env变量,并且我不断收到有关信息无效的错误等信息。>>

这里是一个示例结构,类似于我的结构:

{
  "type": "service_account",
  "project_id": "id",
  "private_key_id": "id",
  "private_key": "-----BEGIN PRIVATE KEY-----\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\n-----END PRIVATE KEY-----\n",
  "client_email": "email",
  "client_id": "number",
  "auth_uri": "uri",
  "token_uri": "uri",
  "auth_provider_x509_cert_url": "url",
  "client_x509_cert_url": "url"
}

这是在我的.env文件中的书写方式:

CREDS='{
  "type": "service_account",
  "project_id": "id",
  "private_key_id": "id",
  "private_key": "-----BEGIN PRIVATE KEY-----\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\n-----END PRIVATE KEY-----\n",
  "client_email": "email",
  "client_id": "number",
  "auth_uri": "uri",
  "token_uri": "uri",
  "auth_provider_x509_cert_url": "url",
  "client_x509_cert_url": "url"
}'

这是我使用它的代码:

const keysEnvVar = process.env['CREDS'];

const keys = JSON.parse(keysEnvVar);

const authClient = new google.auth.JWT( email, auth.fromJSON(keys), null, ['.readonly']);

直觉是“ private_key”值编写不正确,并且正在搞砸,但老实说,我不确定该怎么办。

感谢阅读

我正在使用Google Analytics(分析)API,并且需要传递我被赋予制作JWT的json密钥。但是,我不想从我的.json文件访问密钥,而是希望将我的密钥信息存储在我的.env中...

回答如下:

我知道我来晚了,但对于其他因相同错误而卡住的人((错误:error:0909006C:PEM例程:get_name:没有开始行)

如何使用.env存储用于JWT的JSON密钥?

我正在使用Google Analytics(分析)API,并且需要传递我被赋予制作JWT的json密钥。但是,我希望将密钥信息存储在.env文件中,而不是从.json文件中访问密钥。

我的挣扎是无法读取我的.env变量,并且我不断收到有关信息无效的错误等信息。>>

这里是一个示例结构,类似于我的结构:

{
  "type": "service_account",
  "project_id": "id",
  "private_key_id": "id",
  "private_key": "-----BEGIN PRIVATE KEY-----\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\n-----END PRIVATE KEY-----\n",
  "client_email": "email",
  "client_id": "number",
  "auth_uri": "uri",
  "token_uri": "uri",
  "auth_provider_x509_cert_url": "url",
  "client_x509_cert_url": "url"
}

这是在我的.env文件中的书写方式:

CREDS='{
  "type": "service_account",
  "project_id": "id",
  "private_key_id": "id",
  "private_key": "-----BEGIN PRIVATE KEY-----\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\nddaasdfasdfasdafasfadsafsdafadsafasdfasdfasdfads\nasdfasdfasdafsdfasdfasdfasdfasdfasdfasfd\nasdfasdfasdfasfadsfasdfasdfasdfasdfasdfasdf\n-----END PRIVATE KEY-----\n",
  "client_email": "email",
  "client_id": "number",
  "auth_uri": "uri",
  "token_uri": "uri",
  "auth_provider_x509_cert_url": "url",
  "client_x509_cert_url": "url"
}'

这是我使用它的代码:

const keysEnvVar = process.env['CREDS'];

const keys = JSON.parse(keysEnvVar);

const authClient = new google.auth.JWT( email, auth.fromJSON(keys), null, ['.readonly']);

直觉是“ private_key”值编写不正确,并且正在搞砸,但老实说,我不确定该怎么办。

感谢阅读

我正在使用Google Analytics(分析)API,并且需要传递我被赋予制作JWT的json密钥。但是,我不想从我的.json文件访问密钥,而是希望将我的密钥信息存储在我的.env中...

回答如下:

我知道我来晚了,但对于其他因相同错误而卡住的人((错误:error:0909006C:PEM例程:get_name:没有开始行)

发布评论

评论列表 (0)

  1. 暂无评论