SQL ServerのWindows認証とSQL Server認証接続文字列

出典:http://www.cnblogs.com/lanse777/archive/2007/03/28/691757.html

SQL Serverの.NETデータプロバイダーの接続文字列は、名前/値からなる属性のセットが含まれています。各属性/値のペアをセミコロンで区切られます。PropertyName1 =値1; PropertyName2 =値2; PropertyName3 = VALUE3; .....また、接続文字列は、SQL Serverインスタンス名を含める必要があります。データソース=サーバー名;          

        リモートサーバーを実行を使用したい場合は、ローカルのSQL Server(ローカルホスト)を使用し、例えば、オブジェクト内の正しいサーバのデータソースプロパティに割り当てる必要があります。また、(つまり、Windows認証とSQL Server認証)はその一つであるサポートされる2つの認証方法を指定する必要があります。データベースに接続するWindows認証を使用するWindowsのログオンユーザー、およびSQL認証が明示的にSQL ServerのユーザーIDとパスワードを指定する必要がありました。Windows認証を使用するには、接続文字列で統合セキュリティプロパティを含める必要があります。          

   データソース=サーバー名;統合セキュリティは= TRUE;

         デフォルトでは、統合セキュリティ属性は、それがWindows認証を無効にする手段、Falseです。あなたが明示的にこのプロパティの値がTrueで、接続はSQL Server認証を使用する設定されていない場合は、そのため、SQL ServerのユーザーIDとパスワードを入力する必要があります。その他の統合セキュリティ属性値はSSPI(セキュリティサポートプロバイダインタフェース、セキュリティサポートプロバイダインターフェイス)を識別することができます。のWindows NT 4.0,2000、XPを含むすべてのWindows NTオペレーティング・システムでは、、SSPIの値をサポートしています。これは、Windows認証、統合セキュリティプロパティの値がTrueに設定されているのと同等を使用している場合のみ、インターフェースが使用できます。

         Windows認証モードでは、SQL Serverは、ユーザー接続のWindowsセキュリティサブシステムの検証を使用しています。明示的にユーザーIDとパスワードを指定しても、SQL Serverは、接続文字列でユーザーIDとパスワードをチェックしません。唯一のWindows NT、2000年なので、XPのサポートSSPIは、あなたがこれらのオペレーティングシステムを使用しているそうだとすれば、あなたは、Windowsは、SQL Serverに接続するために、セキュリティポリシーを統合し使用することができます。かかわらず、使用するオペレーティングシステムの、時にSQL Server認証を使用するには、接続文字列でユーザーIDとパスワードを指定する必要があります。

     データソース=サーバー名;ユーザーID = donaldx;パスワード=割れません

         デフォルトでは、SQL Server .NETデータプロバイダ接続は、デフォルトのデータベース・ユーザーを指定するには、ユーザーがデータベースに作成されたとき、あなたはデフォルトのデータベース・ユーザーを設定することができます。また、ユーザーはいつでも、デフォルトのデータベースを変更することができます。たとえば、デフォルトのデータベースシステム管理者は、マスターにあります。あなたが別のデータベースに接続する場合は、データベースの名前を指定する必要があります。

     データソース=サーバー名;統合セキュリティ= SSPI;初期カタログ= Northwindの

         各認証は、その長所と短所があります。単一のソースリポジトリを使用して、Windowsのユーザー認証は、それぞれ、コンフィギュレーションデータベースへのアクセスへのユーザーのための必要はありません。接続文字列は、このように許可されていないユーザーにユーザーIDとパスワードを暴露する危険性を排除し、ユーザーIDとパスワードが含まれていません。明示的にSQL Serverでそのプロパティを設定しなくても、ユーザーとActive Directoryで自分の役割を管理します。Windows認証の欠点は、それが安全なサブシステムがサポートするWindowsベースのセキュアチャネルを介してSQL Serverに接続するために顧客を必要とすることです。アプリケーションが安全でないネットワーク(例えば、インターネット)上で一連のSQL Serverの種類に接続する必要がある場合は、Windows認証は機能しません。また、この認証方法は、また、部分的に、データベースのアクセス制御を管理するための責任は、システム管理者のDBA本体に、本体から転送され、これは、特定の環境で問題になることがあります。          

        一般的には、Windows認証を使用するための一般的なアプリケーションの設計は、それはいくつかの側面を強化してまいります。会社のデータベースのほとんどは、比較的堅牢なWindows Serverオペレーティングシステム上に存在し、これらのオペレーティングシステムは、Windows認証をサポートしています。データアクセス層とデータ層を分離することもアセンブリパッケージングアプリケーションは、中間層に考えデータアクセスコードを容易に表現され、中間層の成分は、典型的には、データベース・サーバを有するネットワーク内で動作しています。この設計では、データベース接続を確立する必要性は、安全でないチャネルを経由している場合。また、Webサービスは、直接大幅に低減異なるデータベース・ドメインに接続する必要があります。

おすすめ

転載: www.cnblogs.com/LinkingCloud/p/12537018.html