在生产应用中使用Google凭据的最佳方法是什么?

时间:2019-05-31 09:38:45

标签: c# google-api speech-recognition google-speech-api

  

在投票前请先阅读,这需要答案。

我正在为STT构建C#.net应用程序,并且正在手动创建凭据。我发现文档对我来说非常混乱,我不知道如何正确添加凭据。

我添加了一个项目,创建了一个JSON凭证,然后下载并保存在文件夹中,并使用GoogleCredential手动指向该文件夹以进行授权,并且一切正常。但是,这对于已交付的应用程序来说不是解决方案。当前方法:

GoogleCredential credentials =
GoogleCredential.FromFile(Path.Combine("*PATH"), "myProject-123XXXx32.json"));

        TextToSpeechClient client = TextToSpeechClient.Create(credentials);

如果我通过环境变量使用默认的凭据json,那么在用户计算机上运行的生产应用程序将如何具有凭据?

所以我必须直接将json放到我的应用程序中?它不是比使用密钥安全吗?

我该如何使用GoogleCredential对我的应用程序进行身份验证?

1 个答案:

答案 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步骤