class SiteMinderServletRequestAuthenticator implements ServletRequestAuthenticator {

    public static final SystemProperty<String> SITE_MINDER_HEADER = SystemProperty.Builder.ofType(String.class)
        .setKey("adminConsole.siteMinderHeader")
        .setDefaultValue("SM_USER")
        .setDynamic(true)
        .build();

    /**
     * Indicates if this ServletRequestAuthenticator is enabled or not
     *
     * @return {@code true} if enabled, otherwise {@code false}
     */
    public static boolean isEnabled() {
        return AuthCheckFilter.isServletRequestAuthenticatorInstanceOf(SiteMinderServletRequestAuthenticator.class);
    }

    @Override
    public String authenticateRequest(final HttpServletRequest request) {<FILL_FUNCTION_BODY>}
}

        final String smUser = request.getHeader(SITE_MINDER_HEADER.getValue());
        if (smUser == null || smUser.trim().isEmpty()) {
            // SiteMinder has not authenticated the user
            return null;
        } else {
            return smUser;
        }
    
<no_super_class>