2017-10-06 142 views
0

我想使用安全的SqlCredential对象来处理连接到我们的SQL数据库的凭据。我可以使用SqlCredential与实体框架进行SQL连接吗?

.NET有一个SqlConnection构造函数的重载,它需要一个连接字符串和SqlCredential,因此您不必将凭据嵌入到连接字符串本身中。我想在创建一个DBContext实例时为Entity Framework使用类似的东西。

  1. 我需要控制连接字符串,该连接字符串被实体框架用于连接。
  2. 我想使用更安全的方式处理凭​​据,使用SQLCredential,NetworkCredential或SecureString并将其传递给DBContext来创建连接。

有没有办法做到这一点?

(顺便说一句,我们不能使用Windows集成的安全作为我们的数据库没有设置为和我不是在一个位置,以改变这种状况。)

+1

也许这可能是帮助:对于实体框架在代码中设置的凭据,而无需使用集成安全性,只存储配置文件中的用户ID(https://开头stackoverflow.com/q/6606020/) – NightOwl888

回答

2

您可以创建SqlCredential一个普通的SqlConnection就像你习惯的那样,然后把它传递给实体框架DbContext的构造函数。

中的DbContext有这样的构造:

public DbContext(DbConnection existingConnection, bool contextOwnsConnection); 
相关问题