无法在GCP密码管理器中访问密码

Bartek Pacia

我正在尝试将代码从使用.env文件中存储的API密钥迁移到使用Google Cloud Platform Secrets Manager。我已按照此处的说明进行操作但遇到错误消息,说我无权访问该机密。

import * as admin from "firebase-admin"
import { SecretManagerServiceClient } from "@google-cloud/secret-manager"

admin.initializeApp()
const secretClient = new SecretManagerServiceClient()

async function main() {
  async function getSecret(): Promise<string | null | undefined> {
    const [version] = await secretClient.accessSecretVersion({ name: "TELEGRAM_TOKEN" })

    return version.payload?.data?.toString()
  }

  const TELEGRAM_TOKEN = await getSecret()
  console.log(TELEGRAM_TOKEN)
}

main().catch(console.error)

那就是我得到的错误:

> node lib/app.js --telegram

{ Error: 7 PERMISSION_DENIED: Permission denied on resource project TELEGRAM_TOKEN.
    at Object.callErrorFromStatus (/Users/bartekpacia/dev/node/telegram-lang-enforcer/node_modules/@grpc/grpc-js/build/src/call.js:30:26)
    at Object.onReceiveStatus (/Users/bartekpacia/dev/node/telegram-lang-enforcer/node_modules/@grpc/grpc-js/build/src/client.js:174:52)
    at Object.onReceiveStatus (/Users/bartekpacia/dev/node/telegram-lang-enforcer/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:340:141)
    at Object.onReceiveStatus (/Users/bartekpacia/dev/node/telegram-lang-enforcer/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:303:181)
    at Http2CallStream.outputStatus (/Users/bartekpacia/dev/node/telegram-lang-enforcer/node_modules/@grpc/grpc-js/build/src/call-stream.js:114:27)
    at Http2CallStream.maybeOutputStatus (/Users/bartekpacia/dev/node/telegram-lang-enforcer/node_modules/@grpc/grpc-js/build/src/call-stream.js:153:22)
    at Http2CallStream.endCall (/Users/bartekpacia/dev/node/telegram-lang-enforcer/node_modules/@grpc/grpc-js/build/src/call-stream.js:140:18)
    at Http2CallStream.handleTrailers (/Users/bartekpacia/dev/node/telegram-lang-enforcer/node_modules/@grpc/grpc-js/build/src/call-stream.js:262:14)
    at ClientHttp2Stream.emit (events.js:198:13)
    at emit (internal/http2/core.js:265:8)
  code: 7,
  details: 'Permission denied on resource project TELEGRAM_TOKEN.',
  metadata:
   Metadata {
     internalRepr:
      Map {
        'google.rpc.help-bin' => [Array],
        'grpc-status-details-bin' => [Array],
        'grpc-server-stats-bin' => [Array] },
     options: {} },
  note:
   'Exception occurred in retry method that was not classified as transient' }

我确实创建了一个具有“所有者”权限的服务帐户,将其下载并制作了export GOOGLE_APPLICATION_CREDENTIALS=/Users/...执行时,我的服务帐户.json文件位置正确显示echo $GOOGLE_APPLICATION_CREDENTIALS

我真的不知道我在做什么错。

塞斯瓦尔戈

访问机密时,需要指定项目:

await secretClient.accessSecretVersion({ name: "TELEGRAM_TOKEN" })

应该

await secretClient.accessSecretVersion({ name: "projects/my-project/secrets/TELEGRAM_TOKEN" })

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

访问Chrome密码管理器

来自分类Dev

使用CMD从Windows凭据管理器中检索密码

来自分类Dev

将密码管理器集成到iPhone App中

来自分类Dev

使用密码管理器中的gpg问题

来自分类Dev

在密码管理器中存储计算机/管理员密码

来自分类Dev

如何备份联想密码管理器?

来自分类Dev

取消密码管理器自动类型

来自分类Dev

密码管理器安全性

来自分类Dev

使用本机密码管理器

来自分类Dev

从`pass`密码管理器中导出密码

来自分类Dev

如何更改通行密码(密码管理器)

来自分类Dev

密码管理器如何加密与组共享的密码?

来自分类Dev

无法在网络管理器(Xubuntu 16.04)中保存VPN密码

来自分类Dev

无法在用户管理器中访问CreateAsync

来自分类Dev

无法在用户管理器中访问CreateAsync

来自分类Dev

如何在Caja文件管理器中创建受密码保护的存档?

来自分类Dev

Android密码管理器应用程序如何工作?

来自分类Dev

如何使Firefox密码管理器更智能?

来自分类Dev

GNOME网络管理器在哪里存储密码?

来自分类Dev

哪种Chrome密码管理器符合我的要求?

来自分类Dev

Chrome密码管理器图标代表什么?

来自分类Dev

“通过”密码管理器-是否需要公共密钥?

来自分类Dev

pass 对话框(unix 密码管理器)消失了

来自分类Dev

无法访问启动管理器

来自分类Dev

TFS 资源管理器您正在访问敏感信息,您需要验证您的密码

来自分类Dev

强制ubuntu密钥密码管理器忘记github凭证的错误密码

来自分类Dev

如何找到Chromium的密码管理器正在使用的密码存储区?

来自分类Dev

Firefox密码管理器-在启动时不断询问主密码

来自分类Dev

Windows 7命令行中要删除凭据管理器中的所有记住的密码是什么?

Related 相关文章

热门标签

归档