如何让您的ASP.NET数据库连接字符串是安全的
今天午餐时候,我与 Rob Conery研究将This Developer's Life播客网站移动到 Git中。我们录制了整个升级和迁移经历,它很快会作为一个视频上传到TekPub上。 植入:在TekPub.tv上签出 我的 TekPub 秀源代码 。 在部署时出现了一个问题。我们将我们的数据库从SQ
今天午餐时候,我与 Rob Conery研究将This Developer's Life播客网站移动到 Git中。我们录制了整个升级和迁移经历,它很快会作为一个视频上传到TekPub上。
植入:在TekPub.tv上签出。
在部署时出现了一个问题。我们将我们的从SQL Compact移动到了 Azure 中的 SQL Server 实例。但是,我们如何让我们的连接字符串是秘密的呢?我们将我们的源代码推送到 GitHub上,但不想公开我们的连接字符串和密码。
有时,你会制作一个 Web.Release.Config 文件,然后把它们放在那儿。有时你会制作一个 connectionStrings.config ,然后从 web.config 中引用它,但永远不会部署它。
然而,Azure 允许您将这些配置设置安全地保存在 Azure 中,所以它们永远不会以代码形式显示。请注意下面的屏幕截图。有一个名为"TDL."的连接字符串,它与我们在代码中所引用的名称和web.config 中连接字符串的名称是相匹配的。
我们的 ASP.NET Web Pages数据库调用是针对 WebMatrix.Data 中的 Database.Open。这是相当简单的。
var db = Database.Open("TDL");
这用于引用一个 TDL.sdf SQL Server Compact Edition (SQL CE) 文件。然后我们将它移到一个连接字符串中。
<connectionstrings><br> <add name="TDL" connectionstring="blah blah" providername="yada yada"></add><br></connectionstrings>
如果您的 Azure 配置(请看上面的截图)拥有一个具有相同名称的值,当部署您的应用程序时,来自Azure 的安全值将被替换。
陷阱警告:我花了二十分钟试图找出为什么我的值没有得到更新。我的应用程序在操作时,好像根本就没有任何连接字符串值。我获得信息"找不到连接字符串"TDL""。多次气得咬牙切齿之后,我发现(多亏David Ebbo的帮助) 我把
所有的一切,都运作得很好。
它让我们把代码放在 GitHub上,设置直接从 GitHub中自动部署到 Azure,同时仍让我们的 SQL 连接字符串 (和任何其他的产品设置) 是私密的。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)