private void logCreateUserEvent(final UserDesc username,
                                    final boolean wasSuccessful,
                                    final String description) {

        final Builder<Void> createEventActionBuilder = CreateEventAction.builder();

        // For some reason IJ doesn't like event.logging.User.builder()
        createEventActionBuilder.addUser(User.builder()
                .withId(username.getSubjectId())
                .withName(username.getDisplayName())
                .build());

        final CreateEventAction createEventAction = createEventActionBuilder.withOutcome(
                        Outcome.builder()
                                .withSuccess(wasSuccessful)
                                .withDescription(description)
                                .build())
                .build();

        stroomEventLoggingService.log(
                buildTypeId(CREATE_USER_ARG_NAME),
                LogUtil.message(
                        "Create user '{}'",
                        username),
                createEventAction);
    }
Creates an account in the internal identity provider
<p>
e.g manage_users ../local.yml
--createUser admin
--createGroup Administrators
--addToGroup admin Administrators
--grantPermission Administrators Administrator
stroom-app/src/main/java/stroom/app/commands/ManageUsersCommand.java