在投票前请先阅读,这需要答案。
我正在为STT构建C#.net应用程序,并且正在手动创建凭据。我发现文档对我来说非常混乱,我不知道如何正确添加凭据。
我添加了一个项目,创建了一个JSON凭证,然后下载并保存在文件夹中,并使用GoogleCredential
手动指向该文件夹以进行授权,并且一切正常。但是,这对于已交付的应用程序来说不是解决方案。当前方法:
GoogleCredential credentials =
GoogleCredential.FromFile(Path.Combine("*PATH"), "myProject-123XXXx32.json"));
TextToSpeechClient client = TextToSpeechClient.Create(credentials);
如果我通过环境变量使用默认的凭据json,那么在用户计算机上运行的生产应用程序将如何具有凭据?
所以我必须直接将json放到我的应用程序中?它不是比使用密钥安全吗?
我该如何使用GoogleCredential
对我的应用程序进行身份验证?
答案 0 :(得分:2)
您可以使用Google KMS设置凭据,并在应用程序https://cloud.google.com/kms/中使用它。
1a。将JSON作为KEY值的JSON保存在KMS中。
2a。解密代码中的JSON并使用它。
1b。或者,您可以使用环境变量使它消耗凭据
2b。只需在要交付应用的环境中设置环境。
3b。您可以使用无服务器框架(https://serverless.com/framework/docs/providers/google/)之类的工具来自动化2b步骤