asp.net - 如何防止其他管理员用户解密 Web 配置
问题描述
我想使用我的 windows 10 pro 桌面作为局域网中的 web 服务器。我使用 IIS,并且已经成功部署了 Web 应用程序。现在,我想保护网络配置。所以我在谷歌搜索,发现我可以用aspnet_regiis加密它。我已经成功加密aspnet_regiis -pef "connectionStrings" "D:\TEST"
和解密了aspnet_regiis -pdf "connectionStrings" "D:\TEST"
现在,我的问题是如果我的计算机有其他管理员级别的 Windows 用户,他/她也可以使用aspnet_regiis -pdf "connectionStrings" "D:\TEST"
命令解密我的 Web 配置。如何防止他/她解密我的网络配置?
解决方案
默认情况下,机器上的解密使用 DPAPI 完成,这意味着任何有权访问机器的人都可以加密/解密。如果您只想允许管理员并且 Web 应用程序可以执行解密,那么您需要使用 RSA 提供程序(而不是 DPAPI)。这将允许您在密钥容器中创建密钥,然后您可以将 DACL 分配给要访问密钥的帐户的密钥容器。
https://inthetechpit.com/2019/05/21/encrypt-web-config-with-rsa-encryption/
推荐阅读
- jquery - Kendo TreeView 显示未定义
- html - 如何使指定的文本变红
- c++ - 将整个链表插入到给定位置的其他链表中
- node.js - 如何使用 Azure IOT HUB 订阅 mqtt 代理上的主题,因为我希望在发布主题时将数据存储在 Azure iot 中心
- python - Keras TensorFlow 警告
- ios - iOS 13 iPhone 10 和 11 仅显示黑色视图但期望 UITabBarController [视图层次结构显示它没有高度]
- python - 如何在 Celery 中创建具有不同并发的任务?
- haskell - Haskell 中如何定义数值类型?
- swift - 当元素之一无法快速转换时中止转换
- android - 按钮中的文字不显示