class ZMSImpl implements Authorizer, KeyStore, ZMSHandler {

    boolean isSysAdminUser(Principal principal) {

        // verify we're dealing with system administrator
        // authorize ("CREATE", "sys.auth:domain");

        // first check - the domain must be the user domain

        if (!principal.getDomain().equals(userDomain)) {
            return false;
        }

        AthenzDomain domain = getAthenzDomain(SYS_AUTH, true);

        // evaluate our domain's roles and policies to see if access
        // is allowed or not for the given operation and resource
        // our action are always converted to lowercase

        String resource = SYS_AUTH + ":domain";
        AccessStatus accessStatus = evaluateAccess(domain, principal.getFullName(), "create",
                resource, null, null, principal);

        return accessStatus == AccessStatus.ALLOWED;
    }

    public  ZMSImpl();

}