インターネットを介しての SQL Server への接続

クライアントとサーバーがインターネットに接続されている場合は、SQL Server Management Studio を使用するか、OLE DB または ODBC (Open Database Connectivity) をベースにしたクライアント アプリケーションを使用して、インターネット経由で Microsoft SQL Server データベース エンジンのインスタンスに接続できます。

インターネット上でデータを共有するには、TCP/IP Net-Library を使用する必要があります。また、TCP/IP のサポートが有効であることも確認してください。サーバーがドメイン ネーム システム (DNS) に登録されている場合は、登録名を使用して接続できます。

インターネット接続は Microsoft ISA Server 接続ほど安全ではありませんが、以下で説明するファイアウォールまたは暗号化接続を使用することによって機密データを保護できます。

SQL Server データベース エンジンでのファイアウォール システムの使用

多くの企業はファイアウォール システムを使用して、インターネット経由の無許可アクセスから自社のネットワークを隔離しています。ファイアウォールを使用すると、ローカル ネットワーク内の特定の TCP/IP アドレスに宛てた要求のみを転送することによって、ネットワークへのアクセスを制限できます。他のすべてのネットワーク アドレスに対する要求は、ファイアウォールによって阻止されます。インターネット アプリケーションがローカル ネットワーク内の SQL Server データベース エンジンのインスタンスにアクセスできるようにするには、データベース エンジンのインスタンスのネットワーク アドレスを指定したネットワーク要求を転送するようにファイアウォールを構成します。

ファイアウォールを使用するには、ファイアウォールによる転送が構成されているネットワーク アドレスで、データベース エンジンのインスタンスが受信待ちする必要があります。SQL Server データベース エンジンの TCP/IP ネットワーク アドレスは 2 つの部分で構成されています。コンピュータ内の 1 つまたは複数のネットワーク カードに関連付けられた IP アドレスと、SQL Server のインスタンスに固有の TCP ポート アドレスです。データベース エンジンの既定のインスタンスでは、特に指定しない限り TCP ポートの 1433 が使用されます。ただし、名前付きインスタンスでは、インスタンスの初回起動時に、未使用の TCP ポート番号が動的に割り当てられます。また、その後の起動時に、元の TCP ポート番号が別のアプリケーションで使用されている場合は、名前付きインスタンスの TCP ポート アドレスを動的に変更することもできます。SQL Server では、現在受信待ちしているポート自体が動的に選択されたポートである場合、未使用の TCP ポートにのみ動的に変更されます。また、静的に割り当てられたポートが別のアプリケーションで使用されている場合は、SQL Server にエラーが表示され、他のポートで受信待ちを続行します。ただし、このポートは SQL Server データベース エンジン用の登録アドレスとして広く知られているため、別のアプリケーションで 1433 が使用されることはほとんどありません。

データベース エンジンの名前付きインスタンスをファイアウォールと共に使用する場合は、SQL Server 構成マネージャを使用して、名前付きインスタンスが特定の TCP ポートで受信待ちするように構成します。同じコンピュータまたはクラスタ上で動作している別のアプリケーションが使用していない TCP ポートを選択する必要があります。さまざまなアプリケーション用に登録されている有名なポートの一覧については、Internet Assigned Numbers Authority の Web サイト (http://www.iana.org) を参照してください。

ネットワーク管理者は、データベース エンジンのインスタンスが受信待ちしている IP アドレスおよび TCP ポート (既定のインスタンスの TCP ポート 1433 または名前付きインスタンスに対して構成した TCP ポート) に宛てた SQL Server への通信を転送するようにファイアウォールを構成する必要があります。また、Microsoft SQL Server では UDP ポート 1434 を使用してアプリケーションからの通信リンクが確立されるため、ネットワーク管理者は、同じ IP アドレスの UDP ポート 1434 に対する要求を転送するようにファイアウォールを構成する必要があります。UDP ポート 1434 の詳細については、「SQL Server Browser サービス」を参照してください。

たとえば、SQL Server データベース エンジンの 1 つの既定インスタンスと 2 つの名前付きインスタンスが動作しているコンピュータを想定します。このコンピュータは、3 つのインスタンスが受信待ちしているネットワーク アドレスがすべて同じ IP アドレスになるように構成されています。既定のインスタンスは TCP ポート 1433 で受信待ちし、他の名前付きインスタンスはそれぞれ TCP ポート 1434 および 1954 で受信待ちします。ネットワーク管理者は、その IP アドレスの UDP ポート 1434 と TCP ポート 1433、1434、および 1954 に対するネットワーク要求を転送するようにファイアウォールを構成します。

Windows ファイアウォールの既定の設定の詳細と、データベース エンジン、Analysis Services、Reporting Services、および Integration Services に影響する TCP ポートの説明については、「SQL Server のアクセスを許可するための Windows ファイアウォールの構成」を参照してください。