---
title: "接続文字列パスワードを不正アクセスから守る"
slug: "protect-the-connection-string-passwords-from-unauthorized-access"
abstract: "ASP.NET IIS登録ツールを使って、機密性の高いSitecoreパスワードを不正アクセスから暗号化する方法。"
---
# 接続文字列パスワードを不正アクセスから守る

> !警告この文書はSXP 9.0以上でのみ使用してください。SXP 8.Xについては、[セキュリティ上の考慮](https://doc.sitecore.com/xp/en/developers/81/sitecore-experience-platform/en/security-considerations.html)事項を使用してください。

SitecoreパスワードはApp\_Config\\ConnectionStrings.configファイルに保存されます。無許可でアクセスされた場合にパスワードが露出しないように、このファイルを暗号化することをお勧めします。

このトピックは、xConnect Search Indexer、Sitecore Cortex™ Blob Storage Service、Sitecore Cortex™ Table Storage serviceを除く [すべてのCoreロールおよびXPサービス](https://doc.sitecore.com/xp/ja/developers/92/platform-administration-and-architecture/roles-overview.html "Roles overview") ロールに適用されます。

> !重要Sitecore 9.3以降で接続文字列を暗号化したい場合や、RegIISライブラリ.NETオープンソースのウェブ開発フレームワークである[Microsoft ASP.NET Core](https://dotnet.microsoft.com/en-us/apps/aspnet)で問題が発生した場合は、[既知の問題KB0253614](https://support.sitecore.com/kb?id=kb_article_view&sysparm_article=KB0253614)に記載された解決策を適用してください。

接続文字列パスワードを保護するために:

1.  以下のPowerShellコマンドを実行し.NET IIS登録ツール(aspnet\_regiis)を見つけてください。
    
    Get-ChildItem C:\\Windows\\Microsoft.net\\ -Recurse aspnet\_regiis.exe | select FullName
    
    コマンドはおそらく複数のバージョンのツールを見つけます。最新のバージョンを選択しなければなりません:
    
    FullName
    --------
    C:\\Windows\\Microsoft.net\\Framework\\v2.0.50727\\aspnet\_regiis.exe
    C:\\Windows\\Microsoft.net\\Framework\\v4.0.30319\\aspnet\_regiis.exe
    C:\\Windows\\Microsoft.net\\Framework64\\v2.0.50727\\aspnet\_regiis.exe
    C:\\Windows\\Microsoft.net\\Framework64\\v4.0.30319\\aspnet\_regiis.exe
    
2.  \-pefオプション付きのaspnet\_regiisツールを使って接続文字列を暗号化してください:
    
    C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319\\aspnet\_regiis -pef "connectionStrings" "C:\\inetpub\\wwwroot\\YOUR\_WEBSITE\_FOLDER"
    
    > !重要ウェブサイトフォルダへのパスをバックスラッシュで終わらせ **て** はいけません(例: C:\\inetpub\\wwwroot\\YOUR\_WEBSITE\_FOLDER\*\*\\\*\*)。そうするとaspnet\_regiisツールが失敗します。
    

パスワードを復号したい場合は、\-pefオプションを \-pdfに変更してPowerShellコマンドを繰り返すことができます。

C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319\\aspnet\_regiis -pdf "connectionStrings" "C:\\inetpub\\wwwroot\\YOUR\_WEBSITE\_FOLDER"

インストールSitecoreする各コンピュータでconnectionStrings.configファイルを個別に暗号化する必要があります。 aspnet\_regiisツールの詳細については、[ASP.NET IIS登録ツールのMicrosoftドキュメント](https://msdn.microsoft.com/en-us/library/k6h9cz8h.aspx)をご覧ください。

## Encrypt the connectionstrings.config file in an Azure PAAS app service environment

Azure PaaS App Service環境では、接続文字列の値を**Connection strings**セクションの環境**変数**に移動することで保護できます。

Kuduを用いたPAAS展開における接続文字列の保護:

1.  **App Service**の**「Development Tools**」に行き、「**Advanced Tools」をクリックしてください。**
    
    ![Open Kudu](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/92/platform-administration-and-architecture/images/PaaS_Kudu.png)
    
2.  **Debug console**、**Powershell**をクリックし、site/wwwroot/App\_configに移動してConnectionStrings.configファイルを開きます。
    
    ![Open Debug console](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/92/platform-administration-and-architecture/images/PaaS_connectionstringslocation.png)
    
3.  ConnectionStrings.configファイルでデータベース接続文字列の値を切り取り、「**保存**」をクリックします。例えば、コア、マスター、セキュリティ、ウェブの値を削除します:
    
    ![Remove the values](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/92/platform-administration-and-architecture/images/PaaS_connectionstringvalues.png)
    
4.  **App Service**を開き、**設定**から環境**変数**を選択し、次に**Connection文字列**を選択します。**「新しい接続文字列**」をクリックし、必要なデータベースの接続文字列を追加し、「**OK」**をクリックします。
    
5.  変更を適用するには **「保存」** をクリックしてください。