2012-05-26 2 views
6

Ich möchte meine Anwendung ausschließlich mit SSL eingeschaltet haben. Ich verwende das Spring Security Core-Plugin. DieseGrails - SSL und Spring Security Core

ist, wie ich versuche, es zu tun in Config.groovy:

grails.plugins.springsecurity.portMapper.httpPort = 8080 
grails.plugins.springsecurity.portMapper.httpsPort = 8443 
grails.plugins.springsecurity.secureChannel.definition = [ '/**' : 'REQUIRES_SECURE_CHANNEL'] 

Ich hatte erwartet, das jedes Mal zu verursachen Umleitungen ich versuchen würde, eine URL für den Zugriff auf HTTP. Allerdings werde ich nie umgeleitet und kann sowohl durch HTTP als auch HTTPS navigieren. Ich kann hinzufügen, ich fange meine Anwendung mit grails run-app -https

Bin ich das alles falsch?

Jeder Vorschlag ist sehr willkommen.

Antwort

0

Sie haben keine Platzhalter, daher stimmt die Definition wörtlich mit der Stamm-URL überein (/), aber nichts darunter (/foo). Was Sie wollen, ist:

grails.plugins.springsecurity.secureChannel.definition = [ '/**' : 'REQUIRES_SECURE_CHANNEL'] 
                  ^^ 

(Sie klar die Platzhalter in the documentation :-)

Schließlich sehen können, wenn Ihr Server hinter einem Load Balancer oder andere Firewall, die das Protokoll versteckt, überprüfen Sie die gleiche Seite Anweisungen zur Überprüfung der Kopfzeile.

+0

ich wirklich leid bin hinzufügen, bearbeiten ich meine Frage, aber ich hatte die Platzhalter bereits in meinem Code. Ich versuche dies auf localhost auf einem Fedora-System, wenn das wichtig ist. –

1

können Sie auch versuchen, die forceHttps Option

grails.plugins.springsecurity.auth.forceHttps = true