如何使用node js更新google cloud Secret manager中的数据

7fhtutme  于 2021-09-23  发布在  Java
关注(0)|答案(2)|浏览(307)

我在google cloud Secret manager中有一些数据,是否有任何方法更新这些数据。我正在尝试使用下面的代码进行更新

client.updateSecret({
            secret: {
                name: 'projects/xyz/secrets/test',
                labels: {
                    secretmanager: 'rocks',
                },
            },
            updateMask: {
                paths: ['labels'],
            },
        }).then(res => {
            let [data] = res
            console.log('success in updating', data)
        }).catch(rej => {
            console.log('erro in updating', rej)
        })
osh3o9ms

osh3o9ms1#

有关使用节点js更新机密的信息,请参阅本文档。

6rvt4ljy

6rvt4ljy2#

假设秘密已经存在,您需要创建一个秘密版本来更新秘密数据。这是我使用的方法。

const { SecretManagerServiceClient } = require('@google-cloud/secret-manager');
const client = new SecretManagerServiceClient()
const parent = 'projects/YOUR_PROJECT' 

async function addSecretVersion(secretName, payload) {

    if (typeof payload != 'string') throw `Secret payload must be a string`
    const [version] = await client.addSecretVersion({
        parent: `${parent}/secrets/${secretName}`,
        payload: {
            data: Buffer.from(payload, 'utf8'),
        },
    })
    console.info(`Added secret version ${version.name}`)
}

相关问题