2

サードパーティのミドルウェアを提供するために Plone を使用しています。

残念ながら、ミドルウェアには、Java アプレットから呼び出される特定のサーブレットがあり、認証は一切行いません。これをファイアウォールで遮断し、できればユーザーが Plone で持つ既存のセッションを使用して、何らかの方法で認証をラップしたいと考えています。

私の最初のアイデアは、nginx (リバース プロキシとして使用している) を構成して、Cookie をチェックし、ユーザーが有効なセッションを持っている場合にのみプロキシすることでした (この例の行に沿って)。しかし、セッション ID はすべて Zope データベースに保存されているため、Plone に対してセッション ID を確認するにはどうすればよいでしょうか?

あるいは、認証後に基本的にすべてをバックエンドに渡す Plone python スクリプトを作成することもできますが、その方法がわかりません。

助言がありますか?または別のアイデア?

4

2 に答える 2

3

Plone はauth_tktセッション Cookie を使用します。このようなセッション Cookie をサポートし、Plone と同じシークレットで構成されているシステムは Cookie を検証できます。

残念ながら、auth_tkt の nginx 実装を見つけることができませんでした。標準は Apachemod_auth_tktモジュールに由来するため、Apache がオプションの場合はそれを使用できます。そのようなセットアップを構成する方法の詳細については、mod_auth_tkt を使用した Plone & CGI シングルサインオンを参照してください。

于 2012-08-29T09:37:03.723 に答える
0

Plone プロセス内でセッション チェックを行うブラウザ ビューを提供する独自の Plone カスタム アドオンを作成できます。Nginxからこれをどのように関与させるかは、私にとって謎です。

http://collective-docs.readthedocs.org/en/latest/views/browserviews.html

認証資格証明が有効かどうかの確認

http://collective-docs.readthedocs.org/en/latest/sessions/login.html?highlight=login#extracting-credentials

Plone 認証と Cookie についての詳細

http://collective-docs.readthedocs.org/en/latest/sessions/cookies.html?highlight=cookies#default-plone-cookies

于 2012-08-29T05:39:33.993 に答える