Посмотрите в сторону удаленного управления лицензиями. т.е. у всех права только на выполнение, а лимиты и ограничения можно уже задавать как нужно. или в C# получать ID пользователя (см. примеры в документации) и сравнивать с разрешенными, если не найдет, то запрещать выполнение, при этом блок шифорвания не меняется.