2

目的

OPENROWSET 機能を使用して、テキスト ファイルに対するクエリでデータを結合します。

エラー

この質問に関する@gbnからの回答を活用して、OPと同じように行セットを開こうとしています。ただし、ファイルの形式は少し異なります。ただし、共有フォルダーにアクセスしようとすると、次のエラーが発生します。

メッセージ 4861、レベル 16、状態 1、行 1

ファイル「\MACHINENAME\Share\EC04.txt」を開けなかったため、一括読み込みできません。オペレーティング システム エラー コード 5 (アクセスが拒否されました。)。

バックグラウンド

私は SQL サーバーにアクセスできないため、そこにファイルを配置することはできません。

ファイルは Windows 7 x64 マシン上にあります。

フォルダは と共有されていRead/WriteますEveryone

質問

SQL サーバーがこのフォルダーにアクセスできるようにするために、他にどのようなセキュリティを付与する必要があるかを理解するのを手伝ってもらえますか?

4

3 に答える 3

9

SQL ログインとしてログインしている場合は、このログイン用の資格情報を作成する必要があります。この資格情報には、共有を読み取るための十分な権限が必要です。

Windows ログインとしてログインしている場合は、SQL Server サービス アカウントに対して Kerberos の制約付き委任を有効にする必要があります。

現在、Windows ログインを使用しているようですが、偽装されたコンテキストが「ダブル ホップ」を通過できないため、認証は Everyone のメンバーではない ANONYMOUS LOGON に解決され、アクセスが拒否されます。これはすべて、まさに期待どおりの動作です。目的の共有を対象とする SQL Server サービス アカウントの制約付き委任を設定する方法については、ネットワーク管理者に相談してください。

于 2013-02-05T15:03:06.697 に答える
2

SQL DNS-Alias を使用したために発生した同じ問題がありました。Servername\Instance で動作し、ServerAlias\Instance で取得Operating system error code 5(Access is denied.).

于 2015-08-24T14:24:44.407 に答える