2017-02-01 14 views
8

私たちは、coldfusion 10サーバーを使用し、ファイルはローカルのイントラネットにあります。ユーザーは、ドメインログインを使用してhttpsを介して任意のファイルにアクセスします。私はhtml5ウェブソケットの使用に興味がありますが、資格情報が提供されていないため、最初の試みでエラーが発生しました。これを回避する方法はありますか?そうでない場合は、このシナリオで推奨される技術はありますか?Windowsドメイン認証でhtml5 Websocketを使用できますか?

ユーザーはクライアント側でログインします。可能であれば、ここで本当にやりたいことは、サーバーへの接続を行うときにその資格情報を渡すことです。

+0

クレデンシャルを取得するためにColdFusionを使用しようとしましたか? –

+0

ユーザーはクライアント側でログインします。ソケットを介してそれらを供給することはできますか? –

答えて

3

ウェブソケットの標高を読み取る前に、Webソケットサーバーにauthenticationヘッダーを渡して、標高(最初のフレーム)のヘッダーに戻してからブラウザに接続すると認証が必要ですが必要だ。

ページでカスタム認証E.Gを使用している場合は、authenticationヘッダーではなく、カスタムヘッダーをサーバーに渡すこともできます。

ウェブクライアントが最初に送信するのは、認証の詳細です。ソケットに接続していない場合は{username_hash}.{password_hash}のようになります。

+0

私はこれを今週末に試してみて、結果とともにここに戻ってきますが、あなたは助けてくれた唯一の人なので、私はあなたに賞金を与えています。 –

1

これを行わないでください。 これで、すでに動作してテスト済みのものをバイパスして、自分自身で認証証明書を送信して暗号化する責任があります。

誰でも暗号化されていないwebsocketポートでスヌープできます。イントラネット用にHTTPを使用し、安定したソリューションを使用してください。あなたの想いをくすぐるので、このホイールを再発明しないでください。

何人かの同僚がこれを維持しなければならず、あなたの自作バージョンの仕組みとプレーンなブラウザ認証のようなものとを比較する必要があります。

私の助言:これはブラウザとよくテストされたcoldfusionライブラリに任せてください。

+0

私が見つけた限り、そのようなcfライブラリはありません。 cf10とcoldfusionウェブソケットを使用すると、wssを実行することさえできません。とにかく、イントラネットはhttpsを超えており、ソケットは同じネットワーク上にあることになります。多分WebSocketが私にとって正しい解決策ではないかと思います。 –

+0

暗号化されていないwebsocketサーバーをスヌーピングすることはできません。 'localhost/127.0.0.1'以外では許可されていないので、SSL証明書を使用する' WSS'を使用している必要があります。それを何らかの形で実装します。 –

+0

私はブラウザの文脈ではなく、もっとグローバルであることを意味しました。シンプルなパッケージキャプチャツールを使用すると、それらをワイヤーからまっすぐに引き出すことも、暗号化されていない無線LANの薄い空気から引き出すこともできます。 私の所在地は:資格情報を送る場合は、非WSSソケットのような暗号化されていないパイプでそれらを送信しないでください。 – SchizoDuckie

関連する問題