diff --git a/integration-tests/elytron-security-jdbc/src/main/resources/application.properties b/integration-tests/elytron-security-jdbc/src/main/resources/application.properties index 1b71d806184a69..eb704fb03a5946 100644 --- a/integration-tests/elytron-security-jdbc/src/main/resources/application.properties +++ b/integration-tests/elytron-security-jdbc/src/main/resources/application.properties @@ -9,3 +9,4 @@ quarkus.security.jdbc.principal-query.clear-password-mapper.enabled=true quarkus.security.jdbc.principal-query.clear-password-mapper.password-index=1 quarkus.security.jdbc.principal-query.attribute-mappings.0.index=2 quarkus.security.jdbc.principal-query.attribute-mappings.0.to=groups +quarkus.http.auth.form.enabled=true diff --git a/integration-tests/elytron-security-jdbc/src/test/java/io/quarkus/elytron/security/jdbc/it/ElytronSecurityJdbcTest.java b/integration-tests/elytron-security-jdbc/src/test/java/io/quarkus/elytron/security/jdbc/it/ElytronSecurityJdbcTest.java index 053150de14b45f..7892c5c7e34fde 100644 --- a/integration-tests/elytron-security-jdbc/src/test/java/io/quarkus/elytron/security/jdbc/it/ElytronSecurityJdbcTest.java +++ b/integration-tests/elytron-security-jdbc/src/test/java/io/quarkus/elytron/security/jdbc/it/ElytronSecurityJdbcTest.java @@ -2,18 +2,15 @@ import static org.hamcrest.Matchers.containsString; -import java.util.Base64; - import org.junit.jupiter.api.Test; import io.quarkus.test.junit.QuarkusTest; import io.restassured.RestAssured; +import io.restassured.filter.cookie.CookieFilter; @QuarkusTest class ElytronSecurityJdbcTest { - public static final String CREDENTIALS = Base64.getEncoder().encodeToString("user:user".getBytes()); - @Test void anonymous() { RestAssured.given() @@ -26,9 +23,31 @@ void anonymous() { @Test void authenticated() { + CookieFilter cookies = new CookieFilter(); RestAssured.given() + .redirects().follow(false) + .filter(cookies) + .when() + .get("/api/authenticated") + .then() + .statusCode(302); + + RestAssured + .given() + .filter(cookies) + .redirects().follow(false) + .when() + .formParam("j_username", "user") + .formParam("j_password", "user") + .post("/j_security_check") + .then() + .assertThat() + .statusCode(302); + + RestAssured.given() + .redirects().follow(false) + .filter(cookies) .when() - .header("Authorization", "Basic " + CREDENTIALS) .get("/api/authenticated") .then() .statusCode(200) @@ -38,17 +57,31 @@ void authenticated() { @Test void authenticated_not_authenticated() { RestAssured.given() + .redirects().follow(false) .when() .get("/api/authenticated") .then() - .statusCode(401); + .statusCode(302); } @Test void forbidden() { + CookieFilter cookies = new CookieFilter(); + RestAssured + .given() + .filter(cookies) + .redirects().follow(false) + .when() + .formParam("j_username", "user") + .formParam("j_password", "user") + .post("/j_security_check") + .then() + .assertThat() + .statusCode(302); + RestAssured.given() + .filter(cookies) .when() - .header("Authorization", "Basic " + CREDENTIALS) .get("/api/forbidden") .then() .statusCode(403); @@ -57,10 +90,11 @@ void forbidden() { @Test void forbidden_not_authenticated() { RestAssured.given() + .redirects().follow(false) .when() .get("/api/forbidden") .then() - .statusCode(401); + .statusCode(302); } } diff --git a/integration-tests/elytron-undertow/src/main/resources/application.properties b/integration-tests/elytron-undertow/src/main/resources/application.properties index 8a7b602db668f9..7d1579c82d6865 100644 --- a/integration-tests/elytron-undertow/src/main/resources/application.properties +++ b/integration-tests/elytron-undertow/src/main/resources/application.properties @@ -5,5 +5,5 @@ quarkus.security.users.embedded.users.mary=mary quarkus.security.users.embedded.roles.mary=managers quarkus.security.users.embedded.users.poul=poul quarkus.security.users.embedded.roles.poul=interns -quarkus.security.users.embedded.auth-mechanism=BASIC quarkus.security.users.embedded.plain-text=true +