0

SQL Server 2005 データベース (ASP のサーバーとは別のサーバー) とのブリッジ接続を持つ ASP ページを作成しようとしています。このために、Windows 認証セットアップを使用しようとしています。私は自分の名前で SQL サーバーへの完全な権限を持っていますが、まだ「ユーザー COMPANY\name のログインに失敗しました」というエラーが表示されます。これが単なる Windows 認証の問題かどうかを確認するために、SQL Server 認証を試みました。これでもログインできません。SQL 認証で問題が発生する理由はわかりませんが、Windows 認証が機能しない理由を突き止めるには、いくつかの助けが必要です。お時間をいただきありがとうございます。

よろしく、

フランコ

4

7 に答える 7

1

あなたは、SQL 認証 (SQL Server のユーザー ID とパスワードだと思います) を使用して SQL Server にログインしようとしたときに、ログインできなかったと言いました。これは、SQL Server 側に問題があることを意味します。SQL Server が混合モード認証用にセットアップされていることを確認してください。つまり、SQL サーバーのユーザー ID とパスワードを指定した場合と同様に、Windows 認証を使用できるようにする必要があります。

それが一つの指針です。ここで誰もが言っているように、Windows認証を使用してASPページからSQL Serverに接続しないでください。これを機能させるには、ドメイン ユーザーを SQL Server ユーザーに設定する必要があります。今日、このページを使用しているのはあなただけですが、明日このページを組織全体に提供する必要がある場合はどうでしょうか?

于 2008-11-05T17:05:39.527 に答える
1

これらは同じドメインにあると思います(COMPANY\nameに言及したため)?

SQL Server がリモート接続を許可するように設定されていることを確認してください。(サービスおよび接続のためのサーフェス エリア構成)

Windows 認証を使用している場合、接続する単一のユーザーを指定しようとしていますか、それとも現在のユーザーの ID が使用されていますか? 常に接続する単一のユーザーを指定する場合は、ドメイン アカウントではなく SQL Server アカウントをお勧めします。

于 2008-11-05T16:36:38.557 に答える
0

ASP.NET アプリケーションからデータベース接続を行う際に問題が発生した場合に実行する手順のチェックリストを次に示します。

  1. ASP.NET サーバーからデータベース サーバーに ping を実行できますか?
  2. ASP.NET サーバーから SQL 認証と Management Studio を使用してデータベースに接続できますか?
  3. テストとして使用する、非常に単純で小さなリターンのクエリを含むページを作成します。テスト ページを使用してデータベースにクエリを実行できますか? web.config エントリに依存せず、すべての接続文字列とクエリ データを手動で入力します (テストに必要な時間以上、このテスト ページをサーバーに残さないでください)。
  4. テスト ページが失敗した場合、エラーは何ですか? ASP.NET サーバー コンソールからテストすると、問題を示す詳細なエラーが表示されます。
  5. 複数のサーバーデータベースがある場合は、自分がいると思われるサーバーに接続していることを絶対に確認してください;)

一般的なヒント: Management Studio はおそらく最良のテストです。ASP.NET サーバーから Management Studio 経由で Wi​​ndows および SQL 認証を介して接続できる場合、問題は ASP.NET アプリケーションの構成にあるはずです。

「COMPANY\name」が許可されていないという明示的な認証エラーが発生しているとのことでした。ドメインコントローラーを実行していますか? 「COMPANY」はドメイン名ですか?そうでない場合、ASP.NET はドメイン アカウントを使用してデータベースに対して認証を行っていない可能性があります。

Windows 認証を使用する必要がある場合は、web.config で偽装を有効にすることを忘れないでください。

<identity impersonate="true" />

また、匿名アクセスを無効にし、サイトの IIS 構成で統合セキュリティを有効にする必要があります。

HTH。

于 2008-11-05T19:12:17.120 に答える
0

現在接続しようとしているサーバーとはまったく異なるサーバーから接続できるため、SQL Server側にはできないと確信しています。使用しているサーバーの問題でしょうか? もしそうなら、可能な解決策は何ですか?

何人かの同僚と話していると、彼らは過去にこのサーバーに接続しようとしたことがないと言っています。あるサーバーからは接続できるが、別のサーバーからは接続できないのは奇妙だと思います。

于 2008-11-05T17:23:10.413 に答える
0

この種の接続には Windows 認証を使用しないでください。

WA と SQLauth の両方に使用している接続文字列 (サニタイズ済み - パスワードを変更) のコピーを投稿できますか?

于 2008-11-05T16:33:42.243 に答える
0

ユーザー名のドメイン部分 (COMPANY\User) を削除してみてください。認証に干渉している可能性があります。

また、SQL Server (アクセスできる場合) で、localhost 経由でサーバーに接続しようとしましたか? ユーザーが十分な権限を持っていない可能性があります。

SQL Server Auth - ユーザーを作成し、それらを読み取り特権でデータベースに接続しましたか?

于 2008-11-05T16:37:27.807 に答える
0

SQL Server をインストールしたときに、混合モード認証を使用するように構成しましたか? また、SQL認証またはWindows認証を使用して、SQL Management Studioを直接使用して接続できますか?

于 2008-11-05T16:39:31.377 に答える