asp.net - 如何提示输入连接字符串的用户名和密码?

标签 asp.net asp.net-mvc u2netdk

我有一个要移植到 ASP.NET 的 C# Winforms 应用程序。一切正常,但与我的 Universe 数据库的连接目前使用我的个人名称和密码。相反,我想获取用户名和密码。

web.config 中将以下内容添加到 connectionStrings:

<add name="U2Connection" connectionString="Database=MY_DB;User ID=myuserid;
Password=mypassword;Server=MY_SERVER;ServerType=UNIVERSE;AccessMode=Native;
RpcServiceType=uvcs" providerName="U2.Data.Client" />

在我的类里面,我有以下内容:

public static U2Connection GetU2ConWebConfig()
{
        string conn_str = ConfigurationManager.ConnectionStrings["U2Connection"].ToString();
        U2Connection con = new U2Connection();
        con.ConnectionString = conn_str;
        con.Open();

        return con;
}

如何提示当前用户输入他们的 Universe 用户名/密码并将其传递给连接字符串?我知道我可以在 .cshtml 页面上制作 2 个文本框并将其与其余表单数据一起传递,但是是否有更好或更安全的方法?

最佳答案

您可以像这样更改您的连接字符串:

<add name="U2Connection" connectionString="Database=MY_DB;User ID={0};Password={1};Server=MY_SERVER;ServerType=UNIVERSE;AccessMode=Native;RpcServiceType=uvcs" providerName="U2.Data.Client" />

然后您可以使用 String.Format() 将用户名和密码传递给它:

string userName = "User";
string password = "Password";
string connectionString = String.Format(ConfigurationManager.ConnectionStrings["U2Connection"].ConnectionString, userName, password);

关于安全性 - 我建议为您的网站或至少为用户必须输入其凭据的页面使用 HTTPS。

关于asp.net - 如何提示输入连接字符串的用户名和密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38662344/

相关文章:

asp.net - 如何计算 asp 转发器中的项目数?

asp.net - 必须先启动连接,然后才能发送数据。在 .send() 之前调用 .start()

ASP.NET Web API 私有(private) Controller

asp.net - 在 asp net core (asp net 5) 中设置身份验证

subroutine - 如何使用 U2 Toolkit for .NET 将 U2 业务逻辑子例程的多值数据转换为 .NET 对象,例如 DataSet/DataTable?

database - 使用.net sdk和sql查询universe数据库时如何获取页面

asp.net - ASP.NET MVC 5 中的基本身份验证

javascript - ASP.NET 中的服务器端验证

javascript - Jquery 从 $().Load() 将数据发送到 Controller 方法

c# - Unidata UniObjects for .NET - 将修改内容从修改后的表写回到 unidata