Spring Security プラグインで Grails 2.1 を使用しています。REQUIRES_SECURE_CHANNEL が設定されたパスがいくつかあります。「grails run-app -https」を使用して自分のマシンでアプリを実行すると、http からの https を必要とするパスにアクセスするとすべてが正常に機能します (リダイレクトされます)。ただし、https を必要とする Amazon Elastic Beanstalk パスでは、http から https にリダイレクトしません。
設定しました
grails.plugins.springsecurity.secureChannel.useHeaderCheckChannelSecurity = true
本番用の Config.groovy および
grails.plugins.springsecurity.secureChannel.useHeaderCheckChannelSecurity = false
開発用の Config.groovy 内。
ポート 80 に telnet で接続し、REQUIRES_SECURE_CHANNEL が設定されたパスをリクエストすると、Amazon Elastic Beanstalk で次のように表示されます。
$ telnet www.example.com 80
Connected to www.example.com.
Escape character is '^]'.
GET /login/index HTTP/1.1
Host: www.example.com
HTTP/1.1 302 Moved Temporarily
Server: Apache-Coyote/1.1
Location: http://www.example.com/login/index
Content-Length: 0
Date: Wed, 10 Oct 2012 19:40:29 GMT
開発環境を使用してポート 8080 に telnet で接続し、REQUIRES_SECURE_CHANNEL が設定されたパスを要求すると、マシンに次のように表示されます。
$ telnet localhost 8080
Trying ::1...
Connected to localhost.
Escape character is '^]'.
GET /server/login/index HTTP/1.1
Host: localhost:8080
HTTP/1.1 302 Moved Temporarily
Server: Apache-Coyote/1.1
Location: https://localhost:8443/server/login/index
Content-Length: 0
Date: Wed, 10 Oct 2012 19:27:09 GMT
Amazon Elastic Beanstalk 上のアプリで、REQUIRES_SECURE_CHANNEL が設定されたパスを http から https に適切に転送するにはどうすればよいですか?