As we are rolling out the user profile feature, we'd like to expand the [Usage API](https://www.elastic.co/guide/en/elasticsearch/reference/current/usage-api.html) to report usage stats of user profiles such as (1) number of enabled user profiles and (2) number of user profiles that are [activated](https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-activate-user-profile.html) over the past X days. 

Response of the Usage API already contains a `security` field that groups relevant stats from security related features. We expect the new stats for user profiles should be added under it as well, for example:
```
{
  "security: {
    "user_profile": {
      "activated": 78,
      "recently_activated": 42  <1>
    }
  }
}
```
<1> The use of `recently_` is chosen to avoid the field to be tied to a specific time period so it is easier to evolve the definition in future.

x-pack/plugin/security/src/main/java/org/elasticsearch/xpack/security/Security.java
threadPool,
                securityContext.get(),
                destructiveOperations
            )
        );
        components.add(new SecurityUsageServices(realms, allRolesStore, nativeRoleMappingStore, ipFilter.get()));
        cacheInvalidatorRegistry.validate();
        return components;
    }
    private AuthorizationEngine getAuthorizationEngine() {
        return findValueFromExtensions("authorization engine", extension -> extension.getAuthorizationEngine(settings));
    }
    private AuthenticationFailureHandler createAuthenticationFailureHandler(
        final Realms realms,
        final SecurityExtension.SecurityComponents components
    ) {
        AuthenticationFailureHandler failureHandler = findValueFromExtensions(
            "authentication failure handler",
            extension -> extension.getAuthenticationFailureHandler(components)
        );
        if (failureHandler == null) {
            logger.debug("Using default authentication failure handler");
            Supplier<Map<String, List<String>>> headersSupplier = () -> {
                final Map<String, List<String>> defaultFailureResponseHeaders = new HashMap<>();
                realms.getActiveRealms().stream().forEach((realm) -> {
                    Map<String, List<String>> realmFailureHeaders = realm.getAuthenticationFailureHeaders();
                    realmFailureHeaders.entrySet().stream().forEach((e) -> {
                        String key = e.getKey();
                        e.getValue()
                            .stream()