クライアント/サーバー チャットの例を使用してSSL要件を実装しました。私の要件の主要部分はsession management.
したい:
- クライアントからサーバーへの
SSL( ) 個の「トンネル」を作成するTLS - (
SSL tunnel)channelは、特定の要件が満たされた場合にのみ開かれ、利用可能になります。そうしないと、チャネルと接続がすぐに閉じられます。 - 要件が満たされているかどうかを確認します。計画は、クライアント
IDがサーバーに送信することです。はID、たとえば 、 、 、 などを使用して組み立てられますclient-PC-ID。UsernameこれIP-AddressはTimestampおよびIDとして使用channel IDできるClient-Sesion-IDため、サーバーはユーザーの位置を特定/追跡/識別できます。
接続を作成するときSSL、構成が作成されたら、handshake()メソッドを実行しています。次に、接続が作成され、ランダムIntegerが として使用されますChannel-ID。したがって、サーバー側でIDは、クライアントの s があり、クライアントにメッセージを送信できます。IDしかし、としても使用できる独自の が必要ですsession ID。そして最も重要なことは、クライアントがこれらIDの を作成し、それらを使用して「ログイン」することです。IDしたがって、クライアントによって作成されたを使用して、サーバー側でTLS tunnel( channel) が開かれるか ( logged-in) 開かれないか ( )を決定したいと考えていますno-access-to-log-in。これには、クライアントが自己作成した一意のメッセージを送信する必要がありますIDねhandshake。
クライアントが有効な を送信するIDと、サーバーはSSL-Certificateが有効かどうかなどを確認する必要があります。しかし、これは次のステップです。
問題は、IDクライアントから送信されたをどのように使用できるかということです。それとも、これは不可能ですか?それとも必須ではないのでしょうか?それとも意味がないのでしょうか?
それに関するアイデアはありますか?