はい、SQL Server Standard EditionからOracleへのWindows認証がサポートされています。 (たとえば、Visual Studioの(SSIS)、またはSQL Server Management Studioでインポートウィザードを使用して)
有効ADO.NET接続文字列は次のようになります。
Data Source=<host name>:<port number>/<database name>;Integrated Security=SSPI;
例:
Data Source=my_host_name.com:1521/ORCL;Integrated Security=SSPI;
Windows認証の場合、 "統合セキュリティ" を "yes"、 "True"または "SSPI"に設定する必要があります。
有効なOLE DB接続文字列は次のようになります。
Data Source=<host name>:<port number>/<database name>;User ID=/Provider=OraOLEDB.Oracle.1;
例:ポート番号は任意であり をしている場合、標準のポート番号(通常は省略することができます。
Data Source=my_host_name.com:1521/ORCL;User ID=/Provider=OraOLEDB.Oracle.1;
ますのでご注意ください1521)が用いられる。 SSISを使用している場合、接続マネージャーはメッセージに文句を付ける可能性があります。 「指定されたパスの形式はサポートされていません。 これは、接続文字列にポート番号が指定されている場合に発生します。 接続文字列(ポート番号も含む)は、接続文字列が式の変数で満たされても機能します。
さらに要件:
たファイル・システム上(クライアントとサーバーの両方で)、sqlnet.oraファイルを存在することがあります。
このファイルには、文字列にデータベースサーバーで
SQLNET.AUTHENTICATION_SERVICES= (NTS)
が含まれている必要があり、完全なOracleクライアントを使用する場合、 sqlnet.oraファイルは、ORACLE_HOME \ネットワーク\ Adminディレクトリに配置する必要があります。インスタントクライアントがインストールされている場合
ORACLE_HOMEが正常に
HKEY_LOCAL_MACHINE \ソフトウェアの\のORACLE
の下に、レジストリで定義されている、ファイルのsqlnet.oraはどこディレクトリの下に「ネットワーク\管理」サブディレクトリに置くことができますInstant Clientが配置されます。 インスタント・クライアントは、ORACLE_HOMEを使用(または評価)するためにレジストリを検索しません。 したがって、そこにあるsqlnet.oraファイルは、Oracleサーバーに接続しようとすると読み取られません。
(これが私の接続が常に失敗する理由です)
環境変数TNS_ADMINを設定することによって、sqlnet.oraのディレクトリを指定することもできます。 Windowsのコントロールパネルにあります。 例: TNS_ADMIN = C:¥TNS_ADMIN
次に、sqlnet.oraファイルをこのディレクトリに配置します。
Oracleサーバーでは、Windowsユーザーが存在する必要があります。 例:
create user "OPS$MYDOMAIN\MY_USER_NAME" identified externally;
grant create session, alter session to "OPS$MYDOMAIN\MY_USER_NAME";
(。追加の権限が必要な場合があります)
そして、Windows認証を使用して、WindowsユーザーMY_USER_NAME、 としてOracleに接続することが可能なはずです。
Oracleドライバを試しましたか? –
この記事を見てください。 http://www.itprotoday.com/security/implementing-windows-authentication-oracleこれは古い記事ですが、AD for Oracleのセットアップ方法について説明しています。幸運にも... –
@Jacob H:はい、私はMicrosoftとOracleの両方の接続マネージャーを試してみました(そして、私はOracle Instant Clientをインストールしました) –