0

BasicAuth保護とSSO (シングル サインオン) を同時に使用することはできますか? クロス ドメイン シングル サインオン (CDSSO) を使用しており、ステージング サーバーを BasicAuth を介してパブリックから非表示にし、SSO を介してログインできるようにしたいと考えています。サーバーを保護するために対応する VHost エントリを挿入するたびに、SSO が機能しなくなります。Apache の仮想ホスト エントリは次のようになります。

<Directory /home/my_user/sites/my_site>
  Options -MultiViews
  AllowOverride All
  Order deny,allow
  Deny from all
  Allow from 192.168.0.0/16
  AuthType Basic
  AuthBasicProvider file
  AuthName "MyBasicAuth"
  AuthUserFile /home/my_user/etc/htpasswd
  Require valid-user
  Satisfy Any
</Directory>

OpenAM の Web ポリシー エージェントのログ ファイルは、dsame_check 中に何らかの認証エラーが発生したことを示しています (エージェントが動作しているかどうかを確認するためのハートビート メッセージのようなものである可能性があります)。

2011-11-04 16:48:16.069    Info 27773:7fb5259550e0 all: 
dsame_check_access(): starting...
2011-11-04 16:48:16.069   Debug 27773:7fb5259550e0 all: 
get_request_url(): ..
..
2011-11-04 16:48:16.069   Debug 27773:7fb5259550e0 all: 
get_request_url(): Returning request URL = 
http://..:80/error/HTTP_UNAUTHORIZED.html.var.

ポリシー エージェントがインストールされているコンピュータの Apache アクセス ログに、次の401 UnauthorizedHTTP エラーが記録されます (192.168.1.1 は OpenAM サーバーのローカル IP です)。

192.168.1.1 - "" [07/Nov/2011:12:42:58 +0100] 
"POST /UpdateAgentCacheServlet?shortcircuit=false HTTP/1.1" 401 - "-" "Java/1.6"

BasicAuthSSO を有効にするために構成を変更するにはどうすればよいですか? それともまったくできないのでしょうか?Apache Web サーバーの保護を解除すると、dsame チェックと SSO が再び機能します。

4

1 に答える 1

0

HttpAuthenticationモジュールによって、Rails フレームワーク自体を介してより高いレベルで BasicAuth 保護を追加することができます。

Apache と Apache エージェントはこのレベルでの保護を認識していないため、これで問題は解決しました。

class ApplicationController
http_basic_authenticate_with :name => "..", :password => ".." 

if Rails.env.staging?特定の環境に対してのみこの保護を有効にするように追加できます。

于 2012-07-23T16:56:23.067 に答える