Skip to content

Commit ad0c215

Browse files
authored
[Security Solution] Add read index privileges to kibana_system role for Microsoft Defender integration indexes (#126803)
adds read privilege to the kibana_system role for indexes associated with the Microsoft Defender Integrations. Changes are necessary in order to support Security Solution bi-directional response actions
1 parent 6174acd commit ad0c215

File tree

3 files changed

+13
-2
lines changed

3 files changed

+13
-2
lines changed

docs/changelog/126803.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
pr: 126803
2+
summary: "[Security Solution] Add `read` index privileges to `kibana_system` role\
3+
\ for Microsoft Defender integration indexes"
4+
area: Authorization
5+
type: enhancement
6+
issues: []

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

+4-1
Original file line numberDiff line numberDiff line change
@@ -345,7 +345,10 @@ static RoleDescriptor kibanaSystem(String name) {
345345
// ingested by Fleet integrations
346346
// in order to provide support for response actions related to malicious events
347347
// for such agents.
348-
RoleDescriptor.IndicesPrivileges.builder().indices("logs-sentinel_one.*", "logs-crowdstrike.*").privileges("read").build(),
348+
RoleDescriptor.IndicesPrivileges.builder()
349+
.indices("logs-sentinel_one.*", "logs-crowdstrike.*", "logs-microsoft_defender_endpoint.*", "logs-m365_defender.*")
350+
.privileges("read")
351+
.build(),
349352
// For ILM policy for APM, Endpoint, & Synthetics packages that have delete
350353
// action
351354
RoleDescriptor.IndicesPrivileges.builder()

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

+3-1
Original file line numberDiff line numberDiff line change
@@ -1031,7 +1031,9 @@ public void testKibanaSystemRole() {
10311031
// Tests for third-party agent indices that `kibana_system` has only `read` access
10321032
Arrays.asList(
10331033
"logs-sentinel_one." + randomAlphaOfLength(randomIntBetween(0, 13)),
1034-
"logs-crowdstrike." + randomAlphaOfLength(randomIntBetween(0, 13))
1034+
"logs-crowdstrike." + randomAlphaOfLength(randomIntBetween(0, 13)),
1035+
"logs-microsoft_defender_endpoint." + randomAlphaOfLength(randomIntBetween(0, 13)),
1036+
"logs-m365_defender." + randomAlphaOfLength(randomIntBetween(0, 13))
10351037
).forEach((index) -> {
10361038
final IndexAbstraction indexAbstraction = mockIndexAbstraction(index);
10371039
assertThat(kibanaRole.indices().allowedIndicesMatcher("indices:foo").test(indexAbstraction), is(false));

0 commit comments

Comments
 (0)