Конфиденциальность означает обеспечение невозможности прочтения данных для неавторизованных пользователей во время передачи их по сети или сохранении в хранилищах, таких как базы данных. Целостность — это обеспечение невозможности изменения данных никем во время передачи по сети или сохранения в хранилище. И то, и другое основано на шифровании.
Шифрование — процесс кодирования данных, делающий невозможным их прочтение другими пользователями. Шифрование в ASP.NET — полностью отдельное средство от аутентификации, авторизации и заимствования прав. Вы можете применять его в комбинации с этими средствами либо самостоятельно.
Как уже упоминалось ранее, шифровать Web-приложения может потребоваться по двум причинам:
Не важно, что классы .NET, выполняющие шифрование, не связаны напрямую с ASP.NET. Фактически вы можете применять их в любых .NET приложениях. Подробнее о шифровании и цифровых подписях, а также управлении настраиваемым шифрованием будет рассказано в главе 25.
Итак, как же заставить работать вместе аутентификацию, авторизацию и заимствование прав в Web-приложении?
Когда пользователи впервые посещают Web-сайт, они анонимны. Другими словами, ваше приложение не знает (и не заботится о том), кто они такие. Если только вы не аутентифицируете их, все так и останется.
По умолчанию анонимные пользователи могут обращаться к любой странице ASP.NET. Но когда пользователь запрашивает Web-страницу, анонимный доступ к которой закрыт, выполняется несколько шагов (показанных на рис. 19.2):
предыдущая следующая страница вначало главы оглавление
808