Мне интересно, как я могу ограничить некоторые методы от несанкционированного доступа пользователей. Предположим, у меня есть служба WCF со следующим контрактом:
int Login(string username, string password);
Invoice[] GetCustomersInvoices(int customerId);
Пользователь должен действовать следующим образом:
- Авторизуйтесь, чтобы проверить сервис и получить его custumerId
- получить его счета, вызвав соответствующий метод с его customerId
Ну, это может быть глупый вопрос, но что, если идентификатор customerA равен 23, но почему-то customerA знает идентификатор customerB, а это 42. Теперь customerA может читать секретные данные счета-фактуры customerB ...
Что я мог сделать лучше всего, чтобы избежать этого?