最近、SQL Server 2012をインストールしましたが、ほとんどデフォルト設定を使用しました。データベースは正常に動作し、SSMS(SQL Server Management Studio)を使用して問題なく接続できますが、Integration Servicesサーバーに接続するとこのメッセージが表示されます
コンピューター "localhost"上のIntegration Servicesサービスへの接続は、次のエラーで失敗しました: "アクセスが拒否されました。"
既定では、管理者のみがIntegration Servicesサービスにアクセスできます。 Windows Vista以降では、Integration Servicesサービスに接続するには、プロセスが管理者権限で実行されている必要があります。サービスへのアクセスを構成する方法については、ヘルプトピックを参照してください。
これがスクリーンショットです
理由はわかりませんが、私はドメイン管理者であり、サーバーに対する完全な権限を持っています。また、デスクトップから接続すると、サーバー自体から接続した場合にのみ問題なく接続できるのはなぜですか。サーバー上のSSMSをIntegration Servicesインスタンスに接続できるように、これを修正するにはどうすればよいですか。
私が理解しているように、ユーザーアクセス制御、または [〜#〜] uac [〜#〜] は、基本的にグループメンバーシップのリクエストをインターセプトできるため、この場合、メンバーシップを取得できなかったようですSQL Serverに渡されます。
他の人はコメントで、管理者としてSSMSを右クリックして実行する必要があるかもしれないと述べています。
抜け目のないオブザーバーが指摘したように、「これはクイックフィックスであり、実際のソリューションではありません。管理者としてだけを実行するべきではありません。これらのセキュリティウォールは理由があるためです」 UACは、Windowsユーザーを 最小特権の原則 考え方に導くように設計されています-必要な場合にのみ強力なアカウントにエスカレートします。問題は、SSMSがUACと「うまく機能しない」ことが知られていることです。私が見るように、これはあなたに3つのオプションを残します
すべてのプログラムに移動しますMicrosoft SQL Server 2012フォルダーをクリックしますSQL Server Management Studioを右クリックします管理者として実行をクリックします
今のところ、これで問題が解決するはずです。 (これにより、常に同じプロセスを繰り返す必要があります)。これを毎回回避し、より永続的なソリューションを実現するには、許可を取得する必要があります。次のプロセスを実行してください、あなたは良いはずです。
SQL Serverの以前のバージョンでは、デフォルトでSQL Serverをインストールすると、UsersグループのすべてのユーザーがIntegration Servicesサービスにアクセスできました。 SQL Serverの現在のリリースをインストールすると、ユーザーはIntegration Servicesサービスにアクセスできなくなります。このサービスはデフォルトで安全です。 SQL Serverのインストール後、管理者はサービスへのアクセスを許可する必要があります。
Integration Servicesサービスへのアクセスを許可するには
(ソースMSDN)
これが役立つことを願っています
Sql Server Management Studioを右クリックして[管理者として実行]を選択し、ローカルインスタンスにインストールされている場合は接続を試みます
SSISサービスが実行されているユーザーを確認する必要があります。 [スタート]> [ファイル名を指定して実行]に移動し、「services.msc」と入力して、SQL Server Integration Services 11.0エントリまでスクロールします。右クリックしてプロパティをチェックし、実行しているユーザーを確認します。 2番目のタブは[ログオン]タブです。ローカルインスタンスで実行しているだけなので、ユーザーをログオンユーザーアカウントとして設定でき、SSISには同じ権限が与えられます。
その問題の仕事の一日を失った。パッケージには、共有ネットワークフォルダーからローカルフォルダーにファイルをコピーするための.NETスクリプトタスクがあり、サーバーからパッケージを実行しようとするたびに「アクセス拒否」例外が発生しました(SQL Studioを使用)。ローカルで実行する場合、パッケージは正常に機能します。
あちこちで拾い上げた多くのものを試してみましたが、結局のところ、SSISExecutorとしてパッケージを実行するジョブ(所有者はsa)を作成することが効果的でした。
ネットワーク上のファイルには全員の読み取りアクセス権があり、何が間違っていたかはまだわかりません。