如何在 Flutter 中使用 Google Secret Manager

How to use Google Secret Manager with Flutter

我正在尝试使用 https://pub.dev/packages/googleapis 并从 SecretManagerApi 获取一个值。

这是我当前的代码,但它甚至无法解析。

final secretVersion = await SecretManagerApi(Client())
          .projects
          .secrets
          .get("projects/myProjectId/secrets/mySec/versions/latest")

所以 secretVersion 永远不会得到一个值。我做错了什么?

这是我使用 Secret Manager 进行身份验证的一种方式:

将您的 google json 文件添加到路径,然后 export GOOGLE_APPLICATION_CREDENTIALS=<YOUR_PATH_TO_JSON_FILE>

然后更改为此代码:

import 'package:googleapis/secretmanager/v1.dart';
...
final client await clientViaApplicationDefaultCredentials(
    scopes: [FirestoreApi.cloudPlatformScope]);
final api = SecretManagerApi(client);
final secrets = await api.projects.secrets.versions.access(<YOUR_SECRET_NAME>);
print(secrets.payload!.data.toString());
// print(utf8.decode(secrets.payload!.dataAsBytes));
...