ソースを参照

HTML markup fixed in DefaultLoginPageGeneratingFilter

Ending div moved  out of condition.

Fixes: gh-6417
Ankur Pathak 6 年 前
コミット
ffe602fdbe

+ 6 - 0
config/src/test/groovy/org/springframework/security/config/annotation/web/configurers/DefaultLoginPageConfigurerTests.groovy

@@ -79,6 +79,7 @@ public class DefaultLoginPageConfigurerTests extends BaseSpringSpec {
 <input name="${csrfToken.parameterName}" type="hidden" value="${csrfToken.token}" />
         <button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button>
       </form>
+</div>
 </body></html>"""
 		when: "fail to log in"
 			super.setup()
@@ -121,6 +122,7 @@ public class DefaultLoginPageConfigurerTests extends BaseSpringSpec {
 <input name="${csrfToken.parameterName}" type="hidden" value="${csrfToken.token}" />
         <button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button>
       </form>
+</div>
 </body></html>"""
 		when: "login success"
 			super.setup()
@@ -168,6 +170,7 @@ public class DefaultLoginPageConfigurerTests extends BaseSpringSpec {
 <input name="${csrfToken.parameterName}" type="hidden" value="${csrfToken.token}" />
         <button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button>
       </form>
+</div>
 </body></html>"""
 	}
 
@@ -272,6 +275,7 @@ public class DefaultLoginPageConfigurerTests extends BaseSpringSpec {
 <input name="${csrfToken.parameterName}" type="hidden" value="${csrfToken.token}" />
         <button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button>
       </form>
+</div>
 </body></html>"""
 	}
 
@@ -318,6 +322,7 @@ public class DefaultLoginPageConfigurerTests extends BaseSpringSpec {
 <input name="${csrfToken.parameterName}" type="hidden" value="${csrfToken.token}" />
         <button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button>
       </form>
+</div>
 </body></html>"""
 	}
 
@@ -377,6 +382,7 @@ public class DefaultLoginPageConfigurerTests extends BaseSpringSpec {
 <input name="${csrfToken.parameterName}" type="hidden" value="${csrfToken.token}" />
         <button class="btn btn-lg btn-primary btn-block" type="submit">Sign in</button>
       </form>
+</div>
 </body></html>"""
 	}
 

+ 4 - 0
config/src/test/java/org/springframework/security/config/http/FormLoginBeanDefinitionParserTests.java

@@ -80,6 +80,7 @@ public class FormLoginBeanDefinitionParserTests {
 						+ "        </p>\n"
 						+ "        <button class=\"btn btn-lg btn-primary btn-block\" type=\"submit\">Sign in</button>\n"
 						+ "      </form>\n"
+						+ "</div>\n"
 						+ "</body></html>";
 
 		this.mvc.perform(get("/login")).andExpect(content().string(expectedContent));
@@ -126,6 +127,7 @@ public class FormLoginBeanDefinitionParserTests {
 						+ "        </p>\n"
 						+ "        <button class=\"btn btn-lg btn-primary btn-block\" type=\"submit\">Sign in</button>\n"
 						+ "      </form>\n"
+						+ "</div>\n"
 						+ "</body></html>";
 
 		this.mvc.perform(get("/login")).andExpect(content().string(expectedContent));
@@ -171,6 +173,7 @@ public class FormLoginBeanDefinitionParserTests {
 						+ "        </p>\n"
 						+ "        <button class=\"btn btn-lg btn-primary btn-block\" type=\"submit\">Sign in</button>\n"
 						+ "      </form>\n"
+						+ "</div>\n"
 						+ "</body></html>";
 
 		this.mvc.perform(get("/login")).andExpect(content().string(expectedContent));
@@ -214,6 +217,7 @@ public class FormLoginBeanDefinitionParserTests {
 						+ "        </p>\n"
 						+ "        <button class=\"btn btn-lg btn-primary btn-block\" type=\"submit\">Sign in</button>\n"
 						+ "      </form>\n"
+						+ "</div>\n"
 						+ "</body></html>";
 
 		this.mvc.perform(get("/login")).andExpect(content().string(expectedContent));

+ 2 - 2
web/src/main/java/org/springframework/security/web/authentication/ui/DefaultLoginPageGeneratingFilter.java

@@ -285,9 +285,9 @@ public class DefaultLoginPageGeneratingFilter extends GenericFilterBean {
 				sb.append("</a>");
 				sb.append("</td></tr>\n");
 			}
-			sb.append("</table></div>\n");
+			sb.append("</table>\n");
 		}
-
+		sb.append("</div>\n");
 		sb.append("</body></html>");
 
 		return sb.toString();