如何在Blazor开发环境中安全保存用户机密信息?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1969个文字,预计阅读时间需要8分钟。
前言:在应用软件开发的过程中,有时需要在不安全的代码中保存一些机密信息,例如微信appkey、连接字符串、加密密钥、字符串、用户名密码等。通常的做法是保存在一个配置文件中。
前言在应用程序开发的过程中,有的时候需要在代码中保存一些机密的信息,比如微信appkey, 连接字符串,加密密钥,字符串,或者是用户名密码等。通常的做法是保存到一个配置文件中,例如 appsettings.json, 以之前文章"Blazor组件自做五: 使用JS隔离封装Google地图" 为例 ,其中有一段代码
@inject IConfiguration config
[Parameter]
public string? Key { get; set; }
key = Key ?? config["GoogleKey"];
意思是在 IConfiguration 服务获取 "GoogleKey" , 默认在 appsettings.json 文件配置. 问题就来了,如果我们在工程的 appsettings.json 文件明文保存 GoogleKey , 多人开发或者开源同步到Github/码云上,那肯定是极其不安全的.
严重建议勿在源代码中存储密码或其他敏感数据。 也不要将生产机密用于开发或测试。 机密不随应用一起部署。
用户机密介绍使用用户机密的场景:
需要保存一些和第三方网站对接的密钥,比如和 微信,微博站点使用的 appkey
给每个开发人员配置不用的用户名密码来访问一些资源
开发人员在开发过程中使用各自本机的数据库,如何配置数据库地址、账号和密码
假设说最后一项,每个开发要使用自己本机的数据库,你可能会说让每个人修改自己的appsettings.config,在提交代码的时候不提交就行了。
本文共计1969个文字,预计阅读时间需要8分钟。
前言:在应用软件开发的过程中,有时需要在不安全的代码中保存一些机密信息,例如微信appkey、连接字符串、加密密钥、字符串、用户名密码等。通常的做法是保存在一个配置文件中。
前言在应用程序开发的过程中,有的时候需要在代码中保存一些机密的信息,比如微信appkey, 连接字符串,加密密钥,字符串,或者是用户名密码等。通常的做法是保存到一个配置文件中,例如 appsettings.json, 以之前文章"Blazor组件自做五: 使用JS隔离封装Google地图" 为例 ,其中有一段代码
@inject IConfiguration config
[Parameter]
public string? Key { get; set; }
key = Key ?? config["GoogleKey"];
意思是在 IConfiguration 服务获取 "GoogleKey" , 默认在 appsettings.json 文件配置. 问题就来了,如果我们在工程的 appsettings.json 文件明文保存 GoogleKey , 多人开发或者开源同步到Github/码云上,那肯定是极其不安全的.
严重建议勿在源代码中存储密码或其他敏感数据。 也不要将生产机密用于开发或测试。 机密不随应用一起部署。
用户机密介绍使用用户机密的场景:
需要保存一些和第三方网站对接的密钥,比如和 微信,微博站点使用的 appkey
给每个开发人员配置不用的用户名密码来访问一些资源
开发人员在开发过程中使用各自本机的数据库,如何配置数据库地址、账号和密码
假设说最后一项,每个开发要使用自己本机的数据库,你可能会说让每个人修改自己的appsettings.config,在提交代码的时候不提交就行了。

