first check if user is in acl for the kms operation , if yes , then return true if user is not present in any configured blacklist for the operation concode_field_sep String ACL_DEFAULT concode_elem_sep String UNAUTHORIZED_MSG_WITHOUT_KEY concode_elem_sep Map<Type,AccessControlList> acls concode_elem_sep Map<String,HashMap<KeyOpType,AccessControlList>> keyAcls concode_elem_sep String UNAUTHORIZED_MSG_WITH_KEY concode_elem_sep Map<KeyOpType,AccessControlList> whitelistKeyAcls concode_elem_sep ScheduledExecutorService executorService concode_elem_sep Map<Type,AccessControlList> blacklistedAcls concode_elem_sep Map<KeyOpType,AccessControlList> defaultKeyAcls concode_elem_sep long lastReload concode_elem_sep Logger LOG concode_elem_sep int RELOADER_SLEEP_MILLIS concode_field_sep boolean checkKeyAccess concode_elem_sep boolean checkKeyAccess concode_elem_sep String getBlacklistConfigKey concode_elem_sep String getAclConfigKey concode_elem_sep void assertAccess concode_elem_sep void setKMSACLs concode_elem_sep Configuration loadACLs concode_elem_sep void stopReloader concode_elem_sep boolean hasAccessToKey concode_elem_sep void run concode_elem_sep boolean isACLPresent concode_elem_sep void startReloader concode_elem_sep void setKeyACLs
boolean function ( Type arg0 , UserGroupInformation arg1 ) { boolean loc0 = acls . get ( arg0 ) . isUserAllowed ( arg1 ) ; if ( loc0 ) { AccessControlList loc1 = blacklistedAcls . get ( arg0 ) ; loc0 = ( loc1 == null ) || ! loc1 . isUserInList ( arg1 ) ; } return loc0 ; }