标签: connection-string

加密连接字符串,以便其他开发人员无法解密,但应用程序仍然具有访问权限

我有一个数据库,我想通过.NET Web应用程序访问.我可以很容易地加密web.config中的连接字符串,但任何有权访问该框的开发人员都可以使用几行代码对其进行解密 - 他们可以访问该框,因此可以访问存储在计算机中的加密密钥.配置.

虽然我可以通过拒绝他们的用户帐户访问来锁定数据库,但是网络应用程序拥有众所周知的密钥并没有帮助.任何人都知道允许Web应用程序访问数据库的好方法,而不会让精明的开发人员使用Web应用程序使用的SQL帐户吗?

.net encryption connection-string

1
推荐指数
1
解决办法
2084
查看次数

连接字符串应该来自mvc项目还是数据项目?

当使用单独的项目来处理mvc项目中的数据库操作时,我应该将连接字符串存储在dbproject中(使用app.config)还是应该将连接字符串保存在mvc项目的web.config中,并将其注入存储库(由dbproject提供)实例化时?

asp.net-mvc connection-string repository-pattern n-tier-architecture

1
推荐指数
1
解决办法
325
查看次数

使用连接字符串连接到提供程序的SQL Server 2008

我刚刚将我的网站部署在提供商的远程服务器上somee.com,但我无法连接到我的SQL Server数据库.

我将*.mdf和*.ldf文件附加到我在提供者端创建的数据库,它要求我用这个更新我的连接字符串(当然我隐藏了id和密码):

workstation id=MoviesDBtest.mssql.somee.com;packet size=4096;user 
id=xxxxx;pwd=xxxxxxxx;data source=MoviesDBtest.mssql.somee.com;persist security 
info=False;initial catalog=MoviesDBtest
Run Code Online (Sandbox Code Playgroud)

现在,我知道我必须更新我的Web.config文件,但我不知道在哪里将这些属性添加到我的原始标记:

<connectionStrings>
    <add name="ApplicationServices" connectionString="workstation 
 ID=MoviesDBtest.mssql.somee.com;packet size=4096;user id=dalya;pwd=02038800;data 
 source=MoviesDBtest.mssql.somee.com;persist security info=False;initial 
 catalog=MoviesDBtest;Integrated 
 Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" 
 providerName="System.Data.SqlClient" /><add name="MovieDBEntities" 
 connectionString="workstation ID=MoviesDBtest.mssql.somee.com;packet size=4096;user 
 id=dalya;pwd=02038800;data source=MoviesDBtest.mssql.somee.com;persist security           
 info=False;initialcatalog=MoviesDBtest;metadata=res://*/Models.MoviesDBModel.csdl|res://*/M
odels.MoviesDBMode
l.ssdl|res://*/Models.MoviesDBModel.msl;provider=System.Data.SqlClient;provider 
connection string=&quot;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated 
Security=True;User Instance=True;MultipleActiveResultSets=True&quot;" 
providerName="System.Data.EntityClient" /><add name="MoviesDBEntities" 
connectionString="workstation ID=MoviesDBtest.mssql.somee.com;packet size=4096;user 
id=dalya;pwd=02038800;data source=MoviesDBtest.mssql.somee.com;persist security 
info=False;initial 
catalog=MoviesDBtest;metadata=res://*/Models.Model1.csdl|res://*/Models.Model1.ssdl|res://
*/Models.Model1.msl;provider=System.Data.SqlClient;provider connection 
string=&quot;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated 
Security=True;User Instance=True;MultipleActiveResultSets=True&quot;" 
providerName="System.Data.EntityClient" /><add name="MoviesDataBEntities" 
connectionString="workstation ID=MoviesDBtest.mssql.somee.com;packet size=4096;user 
id=dalya;pwd=02038800;data source=MoviesDBtest.mssql.somee.com;persist security 
info=False;initial 
 catalog=MoviesDBtest;metadata=res://*/Models.MoviesDBModel.csdl|res://*/Models.MoviesDBMode
l.ssdl|res://*/Models.MoviesDBModel.msl;provider=System.Data.SqlClient;provider 
connection string=&quot;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated 
Security=True;User Instance=True;MultipleActiveResultSets=True&quot;" 
providerName="System.Data.EntityClient" /><add name="WTFEntities" 
connectionString="workstation ID=MoviesDBtest.mssql.somee.com;packet …
Run Code Online (Sandbox Code Playgroud)

sql-server asp.net connection-string

1
推荐指数
1
解决办法
8083
查看次数

使用SQL Native Client透明客户端重定向和镜像的方法是什么?

我从未使用镜像,群集或其他故障转移技术.但我正在调查调整我的DAL是多么容易,以便SQLNativeClient透明客户端重定向对我们有效,如果我的客户决定使用带或不带见证的镜像.

有人可以解释一个客户端应用程序的实用过程,该应用程序可能位于数百个桌面上,这些桌面将连接到一个镜像的实例并可能会故障转移?

我正在考虑为这100台台式机提供零维护方法.我目前的想法是,如果发现过程不是自动的,我将不得不有一个互联网/内联网文件/服务,描述哪个服务器是主体,哪个是镜像,哪些应用程序可以读取.

背景:我已经阅读了多篇文章,涉及使用SQL_COPT_SS_FAILOVER_PARTNER连接属性,并且您必须在连接字符串中指定镜像到alllow SQLNCLI透明客户端重定向,但这一切似乎都有点回到前面.为什么程序员或最终用户必须参与其中?网络基础设施可能会改变.

我希望尝试连接主要的OR镜像或见证会将我重新路由到正确的校长,然后"知道"镜子是什么.我了解证人可以管理多个数据库镜像会话,因此可能需要其他内容.

那么,我如何发现镜像或主服务器开始?我不希望用户输入它,因为它可能会改变.我是否必须先连接到正在运行的主体,从主体中提取已注册的镜像,然后使用这些参数重新连接,或者我可以稍后设置连接attirbute?

我期待一些启蒙!

sql-server odbc connection-string mirroring sql-server-native-client

1
推荐指数
1
解决办法
700
查看次数

Visual Studio单元测试中的连接字符串问题

我正在用C#开发一个MVC3应用程序.

该应用程序有几个项目.由于我想测试存储库的行为,因此相关项目是存储库项目本身和单元测试项目.

我在测试阶段遇到了一个问题,因为每次运行测试时都会启动异常

测试方法UnitTest1.Repository_IsNotNull引发异常:System.ArgumentException:在配置中找不到指定的命名连接,不打算与EntityClient提供程序一起使用,或者无效.

我已经在其他时候遇到过这个异常,我唯一要做的就是将ConnectionString从引用的项目web/app/.config文件(这种情况下是Repository)复制到引用它(在本例中为UnitTest).

在这种情况下的问题是UnitTest项目既没有app.config也没有web.config文件.

这个问题的原因是什么以及如何解决?

unit-testing entity-framework connection-string

1
推荐指数
1
解决办法
5693
查看次数

根据暂存或生产切换Azure ConnectionString

有没有办法根据生产或登台环境使用不同的ConnectionString?怎么样 ?

谢谢

database connection-string azure

1
推荐指数
1
解决办法
694
查看次数

如何避免在代码中的多个位置存储数据库凭据?

用户'Chacha102' 在2010年发布了以下代码以回答这个问题.我喜欢他的代码(如下所示),但是想了解如何避免让数据库连接凭据出现在代码中的多个位置.

这是他的代码:

$cb_db = new cb_db(USER, PASSWORD, NAME, HOST);
$cb_user = new cb_user($cb_db);

class cb_user {
    public __construct(cb_db $database)
    {
        $this->database = $database
    }

    protected function find_by_sql( $sql ) {

        $this->database = new cb_db(USER, PASSWORD, NAME, HOST);
        $result_set = $cb_db->query( $sql );

        $object_array = array();
        while( $row = $cb_db->fetch_array( $result_set ) ) {
            $object_array[] = self::instantiate( $row );
        }
        return $object_array;
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是我将有许多类和函数,并且不希望用户名密码硬编码到每个类中.如果必要的话,我可以在一个地方更新它.

请问最好的方法是什么?

php connection-string database-connection class global-variables

1
推荐指数
1
解决办法
79
查看次数

如何在源代码中的一个位置替换配置文件数据库链接?(asp.net/razor)

我有一个ASP.NET/Razor 3 Web应用程序,它通过MS EntityFramework使用SQL Server数据库.

如果/当我想要更改数据库连接字符串时,例如更改密码或指向其他数据库(例如test vs live),则需要在项目的三个不同XML配置文件中的大约七个位置替换该字符串(app.config,web.config和app.release.config),这是一个容易出错的痛苦.

更糟糕的是,未处理异常的默认Web服务器行为可能包括向Web用户显示配置文件的各个部分,这实际上导致Web服务器显示通过Web显示数据库路径和密码的行.不好.

出于这两个原因,并且因为这不是任何人都可以编辑服务器上的配置文件的产品(任何变化都很多,也可能是一个构建操作),我更喜欢拥有数据库连接信息编译到Web应用程序中并从代码而不是配置文件加载,并且能够执行此操作,以便在我想更改数据库信息时,我可以在一个地方而不是七个地方执行此操作.

我怎么做到这一点?

connection-string web-config razor asp.net-mvc-3

1
推荐指数
1
解决办法
328
查看次数

VB6连接数据库

好吧,我想做的事听起来很简单.我想加载一个表单并在表单加载调用一个sql语句,返回1项并将其放在TextBox1中.这是我到目前为止所拥有的.

 Private Sub Form_Load()

 Call openTheDatabase

 End Sub

 Public Function openTheDatabase() As Boolean

 '-- Here we want to open the database
 Dim sConnectionString As String
 Dim strSQLStmt As String

 '-- Build the connection string
 sConnectionString = "PROVIDER = MSDASQL;driver={SQL Server};database=databasename ;server=servername;uid=;pwd=;"


 strSQLStmt = "SELECT chvDealerName " & _
        "From dbo.tblDealers Where chrVSCAcctNum = '90442001'"

 TextBox1.Text = strSQLStmt

 End Function
Run Code Online (Sandbox Code Playgroud)

编辑

好的是Text1.Text,但现在我只是在文本框中获取字符串,而不是实际的数据库条目

vb6 connection-string visual-studio-6

1
推荐指数
1
解决办法
5万
查看次数

实体框架6与DNX的连接字符串

据我了解实体框架6,它神奇地实现了app.config/web.config中的连接字符串.从DbContext文档,部分备注:

如果从派生上下文调用无参数DbContext构造函数,则派生上下文的名称用于在app.config或web.config文件中查找连接字符串

对于无参数构造函数的情况,或者对于具有连接字符串名称的情况:

也可以通过将名称传递给采用字符串的DbContext构造函数之一来显式指定连接/数据库名称,而不是使用派生的上下文名称.该名称也可以以"name = myname"的形式传递,在这种情况下,必须在配置文件中找到该名称,否则将抛出异常.

但是,在DNX项目中,我没有app.config或web.config.如何在DNX项目中的Entity Framework 6中指定连接?

entity-framework connection-string dnx

1
推荐指数
1
解决办法
1217
查看次数