3 層データベース アプリケーションを開発しています。1.) MS SQL DB 2.) DB に接続された中間層 SOAP サーバー (Delphi 7 を使用) 3.) SOAP サーバーに接続されたクライアント (最初の win32 GUI (Delphi 7 を使用) - 後で他のプラットフォーム)
後の段階でさまざまなクライアントに公開するSOAPサーバーを選択しました(また、win32 GUIクライアントの一部は海外に配置されるため、クライアントはシンである必要があります)(これはボブ博士の提案による)。
私は SOAP を初めて使用し、認証に関するさまざまな例や論文を見てきました。しかし、それについて頭を悩ませることはできません。
Delphi の SOAP サーバー アプリケーション ウィザードを使用して SOAP サーバーとクライアントを作成し、SOAP サーバー データ モジュールを追加し、データベース接続といくつかのデータセットとプロバイダーを追加しました。クライアントをdbgridなどに接続すると、その部分は正常に動作します。
しかし、クライアントが最初にログインしてからデータにアクセスできるようにし、サーバーが各接続をログに記録し、クライアントがログオフまたは切断されたときにもログを記録したいので、セッションIDとタイムアウトが必要だと推測しています. また、サーバーがクライアントに対して、他に誰が「接続」されているか (またはセッションがまだアクティブであるか) をいつでも伝えることができるようにしたいと考えています。認証ヘッダーを作成する必要があることを収集しましたが、sessionID を取得できる場所またはユーザーがわかりません。クライアントがサーバーに接続するたびに、サーバーがセッション ID を生成すると思いますか? どうすれば入手できますか?
ヘルプや提案/ポインタをいただければ幸いです。
ありがとうジャスティン