2012-04-12 13 views
-1

SQL Server 2008のセットアップで混在モード認証を使用しています。私はSQL Serverに入り、新しいログインを追加し、アクティブなディレクトリユーザーを参照しました。Windowsログインを使用してSQL Server 2008および/またはレポートサービスにログイン

しかし、すべてのWindows認証ベースのものは、オペレーティングシステムにログインするために使用されたものだけで動作するようです。だから私は自分のマシンのドメイン外にいるので接続できません。しかし、たとえリモートデスクトップをサーバー自体にインストールしても、そのマシンでもリモートデスクトップログインを使用すると、アクティブなディレクトリユーザーを使用してログインすることはできません。ログインボックスでは、ウィンドウの認証を選択すると、別の名前、およびSQL Serverの認証が無効なログインを示しています。私はどのようにWindowsのユーザー名とパスワードをSQL Serverにログインするときに供給する方法が表示されません。

また、私の.netアプリケーションはどうですか?私は暗号化された接続文字列にSQL Serverの認証ユーザー名/パスワードをハードコードしたくない、私はハードコードWindowsのアクティブディレクトリのユーザー名/パスワードを接続文字列にしたい。

その後、報告サービス、aarrghhh ..レポートサービスはWindowsログインでのみ機能しますか?もしそうなら、私は上記の作業をすることに悩まされています。そうでない場合は、私たちのすべてのレポートにアクセスできるようにSQL Serverログインを設定するにはどうすればよいですか?

答えて

1

これは本当に広い質問です。あなたが取り上げたさまざまなトピックのいくつかを調査します。私はホスティングプロバイダで働いており、信頼関係のない多くのドメインを持っているので、毎日これを扱います。

はい、SQL ServerのWindows認証では、クライアントアプリケーションを実行している資格情報を実際に使用する必要があります。ドメイン\ユーザー名「C:\プログラムファイル(x86の)のMicrosoft \ SQL Serverの100の\ツール\ \ Binnの\ VSShell \ Common7 \ IDE \あなたはRunAs /netonly switch:

ます。runas/netonly /ユーザーでこれを回避することができますSsms.exe "

.NETアプリケーションの認証は大きなトピックです。多くのオプションや章は、これについて書かれていない場合は、

Reporting Servicesについて:このアクセスのほとんどは、ブラウザ経由です。したがって、これはあなたがあなたのブラウザに提供するどんな資格も使用します。 IEでは、これは、現在の資格情報を使用するかどうか、またはプロンプトを表示する必要があるかどうかのセキュリティゾーンと設定によって制御されます。

+0

runasコマンドはオプションではありません。基本的には、ユーザーを認証する必要がありますが、他のタイプのSQLツールを使用してユーザーがデータベースに直接アクセスできるようにすることは望ましくありません。私たちはまた、reprotingサービスを使ってレポートを提供するために私たちのアプリが必要ですが、私たちはユーザーが直接それに入ることを望ましくありません。私は、dbとreportinサービスの両方に対して、特定のハードコードされた暗号化されたWindows認証を使用することができると考えていましたが、Windows認証を使用することは今のところ完全に外されているようです。 – happyfirst

+0

あなたは質問を変更しています。これらは追加の要件です。今あなたの質問は何ですか?資格情報をハードコードする方法特定のバイナリから接続を保証する方法は?私は正直にあなたが探しているものがわからない。 –

+0

私は同意する、多分質問が変わった。また、多分私自身の質問に答えました。答えは、WINDOWSの資格情報を接続文字列にハードコードすることは不可能ですか? – happyfirst

0

いくつかの手がかり:

  • あなたは、外部ユーザーおよびSQL Serverが混在モードになっている場合は、SQLログインがADユーザーにマップされていない持っていることが容易になります(これは、SQL認証ではなくWindowsを使用しますauth)。あなたは2つのSQLログインを持つことができます - 一つはWindowsの認証、もう一つはSQLの認証です。
  • .NETアプリケーションにハードコードされたパスワードがない場合は、ConnectionStringでWindows認証と信頼できる接続モードを使用します。 .NETアプリケーションが専用のADユーザーを作成するサービスの場合、このADユーザーにマップされたSQLログインを作成します。あなたのSQLユーザに必要なものをSQLログイン権限にマップしてください。専用のADユーザーのコンテキストでサービスを実行します。アプリが直接ユーザー(.EXEファイル)によって実行される場合は、信頼済み接続も使用します。あなたのアプリユーザーのためのADセキュリティグループを作成します。 Create SQL "group"このADグループにマッピングされたログイン。あなたのSQL "グループ"ユーザに、必要なものをSQLログイン権限にマップしてください。
  • ConnectionStringでWindows authを使用してSQLログインにログインとパスワードを提供することはできません。 Windowsの認証にはTrustedConnectionを使用し、SQLの認証にはlogin/passwordを使用します。
  • あなたはSQLセッション内のコンテキストを切り替えて再生することができる
  • からEXECUTE ASは、以下を参照してください。http://msdn.microsoft.com/en-us/library/ms181362.aspx
関連する問題