Skip to content

Commit 21712c5

Browse files
committed
BE: RBAC: Add integration test for Active Directory auth
update
1 parent 892fa47 commit 21712c5

File tree

3 files changed

+20
-6
lines changed

3 files changed

+20
-6
lines changed

api/src/test/java/io/kafbat/ui/ActiveDirectoryIntegrationTest.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import static io.kafbat.ui.AbstractIntegrationTest.LOCAL;
44
import static io.kafbat.ui.container.ActiveDirectoryContainer.DOMAIN;
5+
import static io.kafbat.ui.container.ActiveDirectoryContainer.EMPTY_PERMISSIONS_USER;
56
import static io.kafbat.ui.container.ActiveDirectoryContainer.FIRST_USER_WITH_GROUP;
67
import static io.kafbat.ui.container.ActiveDirectoryContainer.PASSWORD;
78
import static io.kafbat.ui.container.ActiveDirectoryContainer.SECOND_USER_WITH_GROUP;
@@ -67,11 +68,12 @@ public void testUserPermissions() {
6768
assertTrue(permissions.stream().anyMatch(permission ->
6869
permission.getClusters().contains(LOCAL) && permission.getResource() == ResourceTypeDTO.TOPIC));
6970
assertEquals(permissions, authenticationInfo(SECOND_USER_WITH_GROUP).getUserInfo().getPermissions());
71+
assertEquals(permissions, authenticationInfo(USER_WITHOUT_GROUP).getUserInfo().getPermissions());
7072
}
7173

7274
@Test
7375
public void testEmptyPermissions() {
74-
assertTrue(Objects.requireNonNull(authenticationInfo(USER_WITHOUT_GROUP))
76+
assertTrue(Objects.requireNonNull(authenticationInfo(EMPTY_PERMISSIONS_USER))
7577
.getUserInfo()
7678
.getPermissions()
7779
.isEmpty()

api/src/test/java/io/kafbat/ui/container/ActiveDirectoryContainer.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,12 @@ public class ActiveDirectoryContainer extends GenericContainer<ActiveDirectoryCo
1313
public static final String FIRST_USER_WITH_GROUP = "JohnDoe";
1414
public static final String SECOND_USER_WITH_GROUP = "JohnWick";
1515
public static final String USER_WITHOUT_GROUP = "JackSmith";
16+
public static final String EMPTY_PERMISSIONS_USER = "JohnJames";
1617

1718
private static final String DOMAIN_DC = "dc=corp,dc=kafbat,dc=io";
1819
private static final String GROUP = "group";
19-
private static final String TEST_GROUP = "test-AD-Group";
20+
private static final String FIRST_GROUP = "firstGroup";
21+
private static final String SECOND_GROUP = "secondGroup";
2022
private static final String DOMAIN_EMAIL = "kafbat.io";
2123
private static final String SAMBA_TOOL = "samba-tool";
2224
private static final int LDAP_PORT = 389;
@@ -38,13 +40,15 @@ public ActiveDirectoryContainer() {
3840
}
3941

4042
protected void containerIsStarted(InspectContainerResponse containerInfo) {
43+
createUser(EMPTY_PERMISSIONS_USER);
4144
createUser(USER_WITHOUT_GROUP);
4245
createUser(FIRST_USER_WITH_GROUP);
4346
createUser(SECOND_USER_WITH_GROUP);
4447

45-
exec(SAMBA_TOOL, GROUP, "add", TEST_GROUP);
46-
exec(SAMBA_TOOL, GROUP, "addmembers", TEST_GROUP, FIRST_USER_WITH_GROUP);
47-
exec(SAMBA_TOOL, GROUP, "addmembers", TEST_GROUP, SECOND_USER_WITH_GROUP);
48+
exec(SAMBA_TOOL, GROUP, "add", FIRST_GROUP);
49+
exec(SAMBA_TOOL, GROUP, "add", SECOND_GROUP);
50+
exec(SAMBA_TOOL, GROUP, "addmembers", FIRST_GROUP, FIRST_USER_WITH_GROUP);
51+
exec(SAMBA_TOOL, GROUP, "addmembers", SECOND_GROUP, SECOND_USER_WITH_GROUP);
4852
}
4953

5054
public String getLdapUrl() {

api/src/test/resources/application-rbac-ad.yml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,19 @@ auth:
22
type: LDAP
33
rbac:
44
roles:
5-
- name: "test-AD-Group"
5+
- name: "roleName"
66
clusters:
77
- local
88
subjects:
99
- provider: ldap_ad
10+
type: group
11+
value: firstGroup
12+
- provider: ldap_ad
13+
type: group
14+
value: secondGroup
15+
- provider: ldap_ad
16+
type: user
17+
value: JackSmith
1018
permissions:
1119
- resource: applicationconfig
1220
actions: all

0 commit comments

Comments
 (0)