SharePoint Server 用の SQL Server セキュリティを構成する
適用対象:2016 2019 Subscription Edition SharePoint in Microsoft 365
SQL Server をインストールする場合、既定の設定は安全なデータベースを提供するのに役立ちます。 また、SQL Server ツールおよび Windows ファイアウォールを使用して、SharePoint Server 環境の SQL Server のセキュリティをさらに強化することができます。
重要
このトピックのセキュリティの手順は、SharePoint チームによって完全にテストされています。 SharePoint Server ファームで SQL Server を保護する他の方法があります。 詳細については、「 SQL Server のセキュリティ保護」を参照してください。
開始する前に
操作を開始する前に、サーバー ファームをセキュリティで保護するための以下のタスクを確認してください。
UDP ポート 1434 をブロックします。
標準以外のポート (TCP ポート 1433 または UDP ポート 1434 以外) をリッスンするように、SQL Server の名前付きインスタンスを構成します。
セキュリティをさらに強化するためには、TCP ポート 1433 をブロックし、既定のインスタンスで使用されているポートを別のポートに割り当てます。
サーバー ファーム内のすべてのフロントエンド Web サーバーとアプリケーション サーバーで SQL Server クライアント エイリアスを構成します。 TCP ポート 1433 または UDP ポート 1434 をブロックした後は、SQL Server を実行しているコンピューターと通信するすべてのコンピューターで SQL Server エイリアスが必要です。
既定以外のポートでリッスンするように SQL Server インスタンスを構成する
SQL Server には、既定のインスタンスや任意の名前付きインスタンスによって使用されているポートを再割り当てする機能が用意されています。 SQL Server では、SQL Server Configuration Manager を使用して TCP ポートを再割り当てします。 既定のポートを変更すると、既定の割り当てに関する知識を利用して SharePoint 環境を悪用するハッカーに対して環境のセキュリティが強化されます。
既定以外のポートでリッスンするように SQL Server インスタンスを構成するには
この手順を実行しているユーザー アカウントが、sysadmin または serveradmin 固定サーバー ロールのメンバーであることを確認します。
SQL Server を実行しているコンピューターで、SQL Server 構成マネージャーを開きます。
ナビゲーション ウィンドウで、[ SQL Server ネットワークの構成] を展開します。
構成するインスタンスに対応するエントリをクリックします。
既定のインスタンスは、[ MSSQLSERVER のプロトコル] と一覧に表示されています。 名前付きインスタンスは、[ named_instance のプロトコル] と表示されます。
メイン ウィンドウの [ プロトコル名] 列で、[ TCP/IP] を右クリックし、[ プロパティ] をクリックします。
[ IP アドレス] タブをクリックします。
このタブには、SQL Server を実行しているコンピューターに割り当てられている IP アドレスのそれぞれについて対応するエントリがあります。既定では、SQL Server は、そのコンピューターに割り当てられているすべての IP アドレスをリッスンします。
既定のインスタンスがリッスンしているポートをグローバルに変更するには、次の手順を実行します。
IPAll を除く IP アドレスごとに、[ TCP 動的ポート] と [ TCP ポート] の両方のすべての値をクリアします。
IPAll の場合は、[ TCP 動的ポート] の値をクリアします。 SQL Server のインスタンスがリッスンするポートを " TCP ポート" フィールドに入力します。 たとえば、「40000」と入力します。
名前付きインスタンスがリッスンしているポートをグローバルに変更するには、次の手順を実行します。
IPAll を含む IP アドレスごとに、[ TCP 動的ポート] のすべての値をクリアします。 このフィールドの値が 0 の場合は、SQL Server が IP アドレスに動的 TCP ポートを使用することを意味します。 この値が空白の場合は、SQL Server が IP アドレスに動的 TCP ポートを使用しないことを意味します。
IPAll を除く IP アドレスごとに、[ TCP ポート] のすべての値をクリアします。
IPAll の場合は、[ TCP 動的ポート] の値をクリアします。 SQL Server のインスタンスがリッスンするポートを " TCP ポート" フィールドに入力します。 たとえば、「40000」と入力します。
[ OK] をクリックします。
SQL Server サービスを再起動するまで変更が反映されないことを示すメッセージが表示されます。 [ OK] をクリックします。
SQL Server 構成マネージャーを終了します。
SQL Server サービスを再起動し、SQL Server を実行しているコンピューターが、選択したポートをリッスンしていることを確認します。
これは、SQL Server サービスの再起動後にイベント ビューアー ログを表示して確認できます。 次のイベントと同様の情報イベントを確認してください。
イベントの種類: 情報
イベント ソース: MSSQL$MSSQLSERVER
イベントの分類: (2)
イベント ID: 26022
日付: 2008 年 3 月 6 日
時刻: 1:46:11 PM
ユーザー: N/A
コンピューター: computer_name
説明:
サーバーは [ 'any' <ipv4>50000] でリッスンしています。
検証: オプションで、操作が成功したことを確認するために実行する必要のある手順を含めます。
既定の SQL Server リッスン ポートをブロックする
セキュリティが強化された Windows ファイアウォールでは、受信の規則と送信の規則を使用して受信および送信ネットワーク トラフィックをセキュリティ保護します。 Windows ファイアウォールは既定ですべての未承諾の受信トラフィックをブロックするので、SQL Server が既定でリッスンするポートを明示的にブロックする必要はありません。 詳細については、「セキュリティが強化された Windows ファイアウォール」と「SQL Server のアクセスを許可するための Windows ファイアウォールの構成」をご覧ください。
Windows ファイアウォールを構成して手動で割り当てられたポートを開く
ファイアウォール経由で SQL Server インスタンスにアクセスするには、SQL Server を実行するコンピューターでアクセスが許可されるようにファイアウォールを構成する必要があります。 手動で割り当てたポートは Windows ファイアウォールで開く必要があります。
Windows ファイアウォールを構成して手動で割り当てられたポートを開くには
この手順を実行しているユーザー アカウントが、sysadmin または serveradmin 固定サーバー ロールのメンバーであることを確認します。
[ コントロール パネル] で、[ システムとセキュリティ] を開きます。
[ Windows ファイアウォール] をクリックし、[ 詳細設定] をクリックして [ セキュリティが強化された Windows ファイアウォール ] ダイアログを開きます。
ナビゲーション ウィンドウで、[ 受信の規則] をクリックして [ 操作] ウィンドウに使用可能なオプションを表示します。
[ 新しい規則] をクリックして、 新規の受信の規則ウイザードを開きます。
このウィザードを使用して、「既定以外のポートでリッスンするように SQL Server インスタンスを構成する」で定義したポートにアクセスするために必要な手順を完了します。
注:
Windows ファイアウォールでインターネット プロトコル セキュリティ (IPsec) を構成すると、SQL Server を実行するコンピューターとの通信をセキュリティ保護することができます。 そのためには、[セキュリティが強化された Windows ファイアウォール] ダイアログのナビゲーション ウィンドウで [ 接続セキュリティ規則 ] を選択します。
SQL Server クライアント エイリアスを構成する
SQL Server を実行しているコンピューター上の UDP ポート 1434 または TCP ポート 1433 をブロックする場合は、サーバー ファーム内の他のすべてのコンピューターで SQL Server クライアント エイリアスを作成する必要があります。 SQL Server クライアント コンポーネントを使用して、SQL Server に接続するコンピューターの SQL Server クライアント エイリアスを作成できます。
SQL Server クライアント エイリアスを構成するには
この手順を実行しているユーザー アカウントが、sysadmin または serveradmin 固定サーバー ロールのメンバーであることを確認します。
対象のコンピューター上で SQL Server のセットアップを実行し、次のクライアント コンポーネントをインストールします。
[ 接続コンポーネント]
[ 管理ツール]
SQL Server 構成マネージャーを開きます。
ナビゲーション ウィンドウで、[ SQL Native Client の構成] をクリックします。
メイン ウィンドウの [項目] の下で、[ 別名] を右クリックし、[ 新しい別名] をクリックします。
[ エイリアス - 新規 ] ダイアログの [ エイリアス名 ] フィールドに、エイリアスの名前を入力します。 たとえば、「SharePoint _alias」と入力します。
" ポート番号" フィールドに、データベース インスタンスのポート番号を入力します。 たとえば、「40000」と入力します。 プロトコルが TCP/IP に設定されていることを確認します。
" サーバー" フィールドに、SQL Server を実行しているコンピューターの名前を入力します。
[ 適用] をクリックし、[ OK] をクリックします。
検証: SQL Server クライアント エイリアスは SQL Server Management Studio を使用してテストできます。これは、SQL Server クライアント コンポーネントをインストールすると使用できます。
SQL Server Management Studio を開きます。
サーバー名の入力を求めるメッセージが表示されたら、作成したエイリアスの名前を入力し、[ 接続] をクリックします。 接続が成功した場合、SQL ServerManagement Studio には、リモート データベースに対応するオブジェクトが格納されます。
SQL ServerManagement Studio からその他のデータベース インスタンスへの接続を確認するには、[ 接続] をクリックし、[ データベース エンジン] をクリックします。
関連項目
その他のリソース
SharePoint の保護: SharePoint 環境での SQL Server の強化