Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在远程服务器上创建系统环境变量_C#_.net_Network Programming - Fatal编程技术网

C# 如何在远程服务器上创建系统环境变量

C# 如何在远程服务器上创建系统环境变量,c#,.net,network-programming,C#,.net,Network Programming,我们设置了许多web服务器和应用程序服务器,它们都连接到我们网络上的一些数据库。我们正试图通过将数据库连接字符串移出代码来提高代码的安全性。我已经设置了一些保存连接字符串的系统环境变量,并可以在应用程序中读取它们,因此工作正常。然而,考虑将其作为安全性的生产解决方案意味着我需要一种在所有服务器上注册所有这些变量的方法,这可能是一个维护噩梦 因此,我想知道是否有人对如何建立一个中央分发应用程序有任何想法,该应用程序可以在需要更新时在服务器列表中注册所有变量?我在windows.net环境中工作。或

我们设置了许多web服务器和应用程序服务器,它们都连接到我们网络上的一些数据库。我们正试图通过将数据库连接字符串移出代码来提高代码的安全性。我已经设置了一些保存连接字符串的系统环境变量,并可以在应用程序中读取它们,因此工作正常。然而,考虑将其作为安全性的生产解决方案意味着我需要一种在所有服务器上注册所有这些变量的方法,这可能是一个维护噩梦


因此,我想知道是否有人对如何建立一个中央分发应用程序有任何想法,该应用程序可以在需要更新时在服务器列表中注册所有变量?我在windows.net环境中工作。或者是否有更好的解决方案将此信息存储在代码库之外?

如果您的目标是MS SQL Server,我建议您使用Windows身份验证和集成安全性,这样您只需要在连接中提供主机和数据库名称


剩余的连接字符串通常最好放在相应的Web.config/App.config中。如果您坚持分发环境变量,请使用Windows注册表-您可以通过远程PowerShell或.NET轻松访问它。

谢谢。我将研究注册表powershell选项。我们针对大多数数据库的目标是ms sql server,但针对其中一个数据库的目标是mysql。我们不想将连接字符串存储在应用程序或web配置文件中,因为这些文件将是签入git的解决方案的一部分。@geoffswartz您可以将它们保存在git中,但不要签入具有真实凭据的web配置。保留一个包含所有键和伪值的网络配置,然后使用网络配置转换。@maccettura也将推荐。谢谢你们两位。我也会研究这些变换!