- - PR -
OleDb接続エラー
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2003-05-30 11:37
こんにちわ。
初歩的なところでつまづいているのですが、自分の力でどうにもならないので ご協力をお願いしたいです 現在、データサーバ、Webサーバ、クライアントという環境で、 クライアントからWebサーバーのページを開いた際に、 データ接続に失敗しています。 データにはWindowsNTの統合セキュリティで接続しようとしているのですが、 その時点でクライアントのユーザ名の受け渡しが上手く いってないように思われます Webサーバ内でページを開いた場合には接続できているので、 Web.Configの設定も問題ないと思うのですが…。 何が原因なのかわかりません。 よい知恵があったらお貸し下さい。 ちなみに実装しようとしている環境は LAN環境なので、外部からの接続は考えておりません | ||||
|
投稿日時: 2003-05-30 12:22
Web.configだけでなく、IISの設定も変更していますか?「Windows統合認証」の後、「偽装」しなければ、IISのダミーユーザか、ASPNETで接続されますよ。MSDNで、「偽装」を検索すると、ヒットすると思います。 | ||||
|
投稿日時: 2003-05-30 12:36
こんにちは。
やや情報不足のようですので、少し質問させて下さい。 標題や文面、この会議室での発言ということから察するに、ASP.NETでWebアプリケーションを作成されているということですね? "Webサーバー"は、具体的にはIISということで。 標題から察するに、データベースへの接続には、System.Data.OleDbネームスペースのクラスを使用しているようですが、接続先のデータベースの種類はなんでしょう?Oracle?JET(.mdb)?MS-SQL Server?(他にもいろいろありますが...) また、"クライアント"とは、この場合、Webブラウザを指すのだと思いますが、LAN内の使用が前提ということで、IEを前提としていいのでしょうか? "WindowsNTの統合セキュリティで接続"とのことですが、ブラウザとIIS間で、"統合Windows認証"が可能なのは、IEだけではないかと思います。 LANですが、NTドメイン、もしくは、ActiveDirectoryのどちらで構築されているでしょうか? あるいは、ワークグループ管理ですか? 長々と書きましたが、発言される際は、もう少し緻密な情報がないと、回答する側も困ると思います。御自身ではあたりまえの環境でも、他の人にはわからないわけですから。 | ||||
|
投稿日時: 2003-05-30 12:59
Jittaさん、adelieworksさん返答ありがとうございます。
説明不足だったので補足させて頂きます まず、データベースの種類ですがMSDEです。 また、LANの環境はNTドメイン、IISの設定ですが、 ディレクトセキュリティで匿名アクセスのチェックを外し、 統合Windows認証にチェックしている状態です Web.Configの設定ですが、impersonateの設定はtrueにしています。 同一アカウントでログインしているにも関わらず、 Webサーバーではデータ接続できているのに、 別PCでは接続できません。 その他、IISの設定等で不備がありましたら、 ご指摘ください。 よろしくお願いします | ||||
|
投稿日時: 2003-05-30 13:51
ookuboです。
接続文字列の設定は大丈夫でしょうか? サンプルです。 "Data Source=mySqlServer;Integrated Security=SSPI;Initial Catalog=myDB" あとは、Webサイトのログイン時に ユーザ名のところに、"ドメイン名\ユーザ名" の形式ログイン してもだめでしょうか? | ||||
|
投稿日時: 2003-05-30 13:55
ookuboです。
接続文字列の設定は大丈夫でしょうか? サンプルです。 "Data Source=mySqlServer;Integrated Security=SSPI;Initial Catalog=myDB" あとは、Webサイトのログイン時に ユーザ名のところに、"ドメイン名\ユーザ名" の形式ログイン してもだめでしょうか? | ||||
|
投稿日時: 2003-05-30 15:44
ookuboさん、返答ありがとうございます
接続文字列の設定はWebサーバよりページを開いた場合は 検索結果が表示されていますので大丈夫かと思います ただ、別PCよりアクセスする場合に特別な設定が 必要であるならば何か教えていただきたく思います また、別PCよりアクセスした際のユーザ名ですが、 Context.User.Identity.Nameで確認したところ、 ドメイン名/ユーザ名という形で取得できていたので、 その点については問題ないかと思います | ||||
|
投稿日時: 2003-05-30 18:06
えっと、、、 [DB Server] - [Web Server] - [Client1] _space_padding____________ - [Client2] とあって、[Web Server]上でページを表示したときは接続でき、[Client1]からだとできない、ということでしょうか。 今、[Web Server]兼[DB Server]の移し替えをやっていて、ちょうど上記のような状態なのですが、[Web Server]上のアセンブリをビルドしては確認しています。そこで発生したことですが、[Web Server]のアセンブリに対してデータベースへのアクセスを許可してやらないと、データベースにアクセスできませんでした。.NET Framework Configrationをチェックしてみてください。私のところは、とりあえずの状態なので、Full Trustにすると、アクセスできました。 #Windows Form Control DLL + HTML + Web Service という、複雑な環境だからかもしれませんけど |