Should also allow PermissionInterface