2016-09-30 179 views
0

我想設置一個基本的示例spring啓動站點,它使用keycloak來實現安全性。我也做了以下如何爲keycloak配置spring boot quickstart?

  • 克隆就跑(gradlew bootRun)從https://spring.io/guides/gs/serving-web-content/https://github.com/spring-guides/gs-serving-web-content.git)的「完整」例如,以驗證它的工作原理
  • 添加以下到項目的gradle這個依賴關係:

    compile("org.keycloak:keycloak-spring-boot-adapter:2.2.1.Final") 
    compile("org.keycloak:keycloak-tomcat8-adapter:2.2.1.Final") 
    
  • 把下面的配置/ application.yml:

    spring: 
        profiles: default 
    
    server.port: 8090 
    
    keycloak: 
        securityConstraints: 
         - securityCollections: 
         - name: application section 
          authRoles: 
           - user 
          patterns: 
           -/
        realm: stl 
        realmKey: MIIBIjANBgkqh[etc...] 
        auth-server-url: http://localhost:8280/auth 
        ssl-required: none 
        resource: example-ui 
        credentials: 
         secret: a117[etc...] 
    

通過這些步驟,我相信我已遵循https://keycloak.gitbooks.io/securing-client-applications-guide/content/v/2.2/topics/oidc/java/spring-boot-adapter.html中的所有方向。但是現在,當我嘗試瀏覽到應用程序時,出現錯誤。這是登錄到控制檯的內容:No login page was defined for FORM authentication in context []

我缺少什麼來完成此應用的配置?從早期版本的其他keycloak適配器的使用經驗來看,我希望在某處指定一個認證方法KEYCLOAK,但我不知道在春季啓動的情況下,如果確實會在任何地方出現問題,那麼它將在何處發生。

回答

3

同樣的問題在這裏,但它只是當我從春季啓動1.4.0升級到1.4.1。 他們已經將tomcat的版本通過了8.5.4到8.5.5。除GET之外的每個請求都在工作,只有GET不能像上面說的那樣在消息「上下文[]中沒有爲FORM認證定義登錄頁面」。

降級Tomcat版本爲我做的伎倆:

<tomcat.version>8.5.4</tomcat.version> 

有人能知道這是怎麼回事?

相關問題