Skip to content

Commit 2b0f455

Browse files
committed
added privilege and test
1 parent 7ec5b41 commit 2b0f455

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

x-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/security/authz/store/KibanaOwnedReservedRoleDescriptors.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,11 @@ static RoleDescriptor kibanaSystem(String name) {
174174
.privileges("write", "delete", "create_index")
175175
.allowRestrictedIndices(true)
176176
.build(),
177+
// Knowledge base. Fleet creates, manages, and uses this index to store knowledge base documents to be consumed by AI assistants.
178+
RoleDescriptor.IndicesPrivileges.builder()
179+
.indices(".integration_knowledge*")
180+
.privileges("all")
181+
.build(),
177182
// Other Fleet indices. Kibana reads and writes to these indices to manage
178183
// Elastic Agents.
179184
RoleDescriptor.IndicesPrivileges.builder()

x-pack/plugin/core/src/test/java/org/elasticsearch/xpack/core/security/authz/store/ReservedRolesStoreTests.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -936,6 +936,11 @@ public void testKibanaSystemRole() {
936936
".fleet-fileds"
937937
).forEach(index -> assertAllIndicesAccessAllowed(kibanaRole, index));
938938

939+
// Knowledge base. Fleet creates, manages, and uses this index to store knowledge base documents to be consumed by AI assistants.
940+
Arrays.asList(".integration_knowledge" + randomAlphaOfLength(randomIntBetween(0, 13))).forEach(
941+
index -> assertAllIndicesAccessAllowed(kibanaRole, index)
942+
);
943+
939944
final IndexAbstraction dotFleetSecretsIndex = mockIndexAbstraction(".fleet-secrets");
940945
assertThat(kibanaRole.indices().allowedIndicesMatcher("indices:foo").test(dotFleetSecretsIndex), is(false));
941946
assertThat(kibanaRole.indices().allowedIndicesMatcher("indices:bar").test(dotFleetSecretsIndex), is(false));

0 commit comments

Comments
 (0)