У меня есть веб-страница, которую вы передаете в параметре id (через строку запроса), который затем используется для извлечения данных из базы данных. Обычно пользователь переходит на эту страницу с другой страницы, на которой перечислены только те записи, к которым у него есть доступ. Однако, если они перейдут непосредственно на страницу, введя URL-адрес в адресной строке, они смогут эффективно просматривать любую запись, которая им нравится.
Например. Если они введут что-то вроде http://localhost/TestSite/ClientAdmin/ManageLocation.aspx?LocationID=5 в свою адресную строку, они смогут получить доступ к записи базы данных с идентификатором местоположения, равным пяти, даже если у них не должно быть доступа к ней.
Теперь я мог бы решить эту проблему, выполняя проверку базы данных при каждой загрузке страницы, чтобы увидеть, имеет ли текущий пользователь доступ к записи, которую он пытается просмотреть. Однако это не кажется очень эффективным, учитывая, что в большинстве случаев пользователь не будет пытаться получить доступ к записи, которая не принадлежит ему. У кого-нибудь есть лучшее предложение?
Спасибо.