azure - 将在 Azure 上托管的 asp.net 中的环境变量引用的 JSON 文件的存储位置
问题描述
我已经使用 ASP.NET 创建了一个 Web 服务,并将在 Firestore 中存储数据。因此,我需要设置引用 JSON 文件的 GOOGLE_APPLICATION_CREDENTIALS 环境变量。这在我的机器上本地工作,但它在发布到 Azure 时不起作用。问题是我找不到 JSON 文件来定位文件路径,我在发布之前仔细检查了我的本地项目文件夹是否有 JSON 文件。我可以知道存储我的 JSON 文件的最佳位置在哪里,以便我可以找到文件路径,GOOGLE_APPLICATION_CREDENTIALS 可以在 Azure 门户中引用它。
谢谢你。
解决方案
如果您希望避免将该凭证文件签入源代码控制或开发机器上,并且您已经有一个安全的地方来存储字符串配置数据,这是另一种选择。
您可以通过这种方式启动 Firestore 客户端并手动为其提供凭据:
var credential = GoogleCredential.FromJson(<JSON AS STRING>);
var channelCredentials = credential.ToChannelCredentials();
var channel = new Channel(FirestoreClient.DefaultEndpoint.ToString(), channelCredentials);
var client = FirestoreClient.Create(channel);
(此处使用 Nuget 包的代码:https ://www.nuget.org/packages/Google.Cloud.Firestore/ )
推荐阅读
- amazon-web-services - How to setup two servers inside one AWS ec2 with nginx and Route 53?
- docker - Docker 中 Jekyll 中的 URL 损坏
- javascript - 删除包含特定单词的单元格,例如“no”机器人而不是带有“nothing”的单词
- facebook - 我做了我能做的,但 Facebook 没有清除网站缓存
- c++ - 如何在嵌入式平台中管理不同 Pin-Out 板的代码以更好地管理 HAL?
- javascript - 如何使用控制器 2 在 div 的 ng 类中使用控制器 1 中的 Angular $scope.variable
- ios - 如何仅禁用 ScrollView 中的滚动而不禁用内容视图?
- ios - 在 Swift 的 HeaderView 中重新加载数据不起作用
- c# - c# datatable 使用计算计算一系列行的平均值
- asp.net-mvc - 如何使用 ASP.Net MVC 中的数据注释更改级别名称?