Is there any reason why your not using Security Groups and InGroup for this stuff ? Much better long term solution imho.