Monitoring data can now be stored in `metrics-*` patterns when collected through elastic-agent. [Our documentation](https://www.elastic.co/guide/en/kibana/current/monitoring-data.html) recommends to use the `monitoring_user` role to view the data in Stack Monitoring application but that role does not have permissions to read from the metrics pattern.

`monitoring_user` should be allowed the same permissions on `metrics-*` as `.monitoring-*`
x-pack/plugin/security/src/test/java/org/elasticsearch/xpack/security/authz/RBACEngineTests.java
randomAlphaOfLengthBetween(3, 8),
            changePasswordRequest ? randomFrom(ReservedRealm.TYPE, NativeRealmSettings.TYPE) : randomAlphaOfLengthBetween(4, 12),
            randomAlphaOfLengthBetween(3, 8)
        );
        final Authentication authentication = Authentication.newRealmAuthentication(authUser, authenticatedBy).runAs(user, lookedUpBy);
        assertThat(request, instanceOf(UserRequest.class));
        assertFalse(RBACEngine.checkSameUserPermissions(action, request, authentication));
        
        assertFalse(RBACEngine.checkSameUserPermissions(action, request, authentication));
        if (request instanceof ChangePasswordRequest) {
            ((ChangePasswordRequest) request).username("joe");
        } else {
            ((HasPrivilegesRequest) request).username("joe");
        }
        assertTrue(RBACEngine.checkSameUserPermissions(action, request, authentication));
    }
    public void testSameUserPermissionForAuthenticateRequest() {
        assertTrue(
            RBACEngine.checkSameUserPermissions(
                AuthenticateAction.NAME,
                AuthenticateRequest.INSTANCE,
                AuthenticationTestHelper.builder().build()
            )
        );
    }
    public void testSameUserPermissionDoesNotAllowOtherActions() {
        final TransportRequest request = mock(TransportRequest.class);
        final String action = randomFrom(
            PutUserAction.NAME,
            DeleteUserAction.NAME,