class AbstractPolicyBasedAuthorizer implements ManagedAuthorizer {

    @Override
    public final void inheritFingerprint(final String fingerprint) throws AuthorizationAccessException {
        if (fingerprint == null || fingerprint.trim().isEmpty()) {
            return;
        }

        final PoliciesUsersAndGroups policiesUsersAndGroups = parsePoliciesUsersAndGroups(fingerprint);
        policiesUsersAndGroups.getUsers().forEach(user -> addUser(user));
        policiesUsersAndGroups.getGroups().forEach(group -> addGroup(group));
        policiesUsersAndGroups.getAccessPolicies().forEach(policy -> addAccessPolicy(policy));
    }

}