2017-08-10 10 views
0

コード内のweb.configファイルにローカルdevデータベース接続文字列が含まれています。WebアプリケーションをAzureにデプロイすると、データベースの接続が正しく行われます。ポータルのアプリケーション設定内の接続文字列エントリの文字列。しかし、それはプレーンテキストでこの文字列を持つweb.configファイルを作成して展開しています(FTP経由でファイルをチェックするとわかります)。接続文字列がプレーンテキストであるweb.configファイルを展開するAzure

これは正しい動作ですか?私は、配備されたweb.configファイル内にプレーンテキストで接続文字列を格納することは本当に望んでいません(すでに安全かもしれませんが)。

いくつかのビルド/デプロイメントステップを介してweb.configファイルのそのセクションを暗号化するケースがありますか?私はこれが他の記事で言及されているのを見ましたが、Azureでそれを行う方法は不明です。

N.B.もしこれがすでに尋ねられているのであれば、私はたくさんの検索をしており、展開された最後のweb.configファイルを直接参照するものは見つけられません。

+0

すでにこれをお試しください。 https://stackoverflow.com/questions/36951231/c-sharp-sql-how-to-encrypt-connectionstring-of-web-config-to-azure-sql-database – LoreX75

+0

それは私が愚かに '使用実行時のこの接続文字列(update destination web.config) 'ボックスがAzureウィザードにVS publishを選択したので、これが接続文字列を注入していたものでした。 – DaveU

+0

また、「Execute Code First Migrations」ボックスに2番目の「Context_DatabasePublish」conn文字列が追加されていたため(2番目のコピー)、コードを使用して手動でコードを移行することにしました。オプションとweb.config(https://stackoverflow.com/questions/30280346/ef-code-first-migrations-not-running-after-deploy-to-azure?rq=1)を参照してください。結果はweb.configのローカルdevのconn文字列になりました。これは実行時にAzureによって私のポータルアプリケーション設定の値にスワップアウトされます – DaveU

答えて

0

Web.configの接続文字列をプレーンテキストで設定したくない場合。接続文字列をAzure Website appsettingに設定して、web.configファイルに置き換えることができます。

についてHow Application Strings and Connection Strings Work

開発者は、プレーンバニラキーと値のペアだけでなく、接続文字列として使用されるキーと値のペアを格納することができたチュートリアルがあります。キーと値のペアは、Windows Azure Webサイト構成ストアのシーンの背後に格納されているため、キーと値のペアはWebアプリケーションのファイルコンテンツに格納する必要はありませんセキュリティの観点からは、パスワードを持つSql接続文字列などの機密情報がweb.configファイルまたはphp.iniファイルのクリアテキストとして決して表示されないため、

関連する問題