Шрифт:
• идентификация владельца;
• идентификация объекта владения;
• установление связи владельца с объектом.
Показание свидетеля включает все эти элементы. Исторически свидетель-очевидец часто являлся единственным источником установления перечисленных фактов. Но устные показания свидетелей отнимают слишком много времени. Поэтому их заменили документами из надежных источников, заслуживающих доверия. В наше время личность можно установить по служебным удостоверениям, свидетельствам о рождении и водительским правам. Серийные номера, даты производства, сертификаты на продукцию могут использоваться для идентификации объектов. Эти документы не изменяются после создания, потому что характерные отличительные черты людей и объектов не меняются.
Соответствие между владельцами и объектами обычно устанавливается с помощью журнала (книги) учета (ledger) или реестра (register) (запись актов гражданского состояния, бухгалтерская книга, финансовый реестр и т. п.). Но это не тот документ, который остается неизменным после создания. Каждый факт передачи права владения должен быть задокументирован в подобном реестре, потому что устаревший реестр или журнал (книга) не может являться достоверным доказательством для подтверждения права владения. Важность наличия реестра, содержащего самые последние сведения и оформляемого в надлежащем порядке, привела к появлению специализирующихся на этой области деятельности учреждений во многих сообществах. Чем большую ценность имеют некоторые типы объектов, тем больше вероятность существования управляемого на государственном уровне реестра, в котором документируются права владения этими объектами. Большинство таких реестров открыто для всех, чтобы упростить проверку и доказательство прав владения. Вы сами можете проверить наличие подобных реестров в вашей стране и узнать, какие именно права они удостоверяют. Я нашел реестры, документирующие права владения недвижимостью, патентами, судами, самолетами и компаниями. Кроме того, я даже обнаружил журналы регистрации браков, рождений и смертей.
На рис. 6.1 отображена взаимосвязь различных концепций, используемых для проектирования программного обеспечения, управляющего правами владения.
Рис. 6.1 Концепции права владения
На рис. 6.1 концепции верхних уровней являются более обобщенными по сравнению с концепциями более низких уровней. Концепции каждого уровня могут рассматриваться как реализации концепции уровней, расположенных выше. Например, доказательство права владения требует идентификации владельцев и объектов собственности, а также установления связи между владельцами и собственностью. Применение права владения требует идентификации, а также аутентификации и авторизации для полной уверенности в том, что собственностью пользуется личность, имеющая на это юридическое право. В самой нижней строке на рисунке представлен уровень реализации. Например, здесь показано, что пароль и подпись являются концепциями, используемыми для реализации процедур аутентификации и авторизации. Журнал (книга) и соответствующее программное обеспечение могут рассматриваться как конкретная реализация концепции установления связи между владельцами и их собственностью.
На рис. 6.1 отображены три главные концепции, относящиеся к задаче обеспечения безопасности, которые необходимо рассмотреть более подробно, так как их смысловое значение в контексте программных систем несколько отличается от используемого в повседневной жизни:
• идентификация;
• аутентификация;
• авторизация.
Общий смысл и взаимосвязь между этими тремя концепциями можно проиллюстрировать на примере из реальной жизни. Предположим, что вы хотите купить бутылку вина в винном магазине. Винным магазинам запрещается продавать алкогольные напитки лицам, не достигшим определенного возраста. Как сотрудники винного магазина могут удостовериться в том, что они продают вино только разрешенной категории людей? Это осуществляется с помощью идентификации, аутентификации и авторизации. Рассмотрим подробнее, как работают эти концепции на практике.
Идентификация
Идентификация означает подтверждение подлинности личности посредством установления имени или каких-либо других признаков, которые могут использоваться как идентификатор [37]. В примере с винным магазином покупатель может назвать свое имя. Идентификация еще не доказывает, что человек действительно носит то имя, которым он назвался. Идентификация не предоставляет доказательств того, что покупатель не является несовершеннолетним. Идентификация – это всего лишь объявление имени конкретного человека.
Аутентификация
Цель аутентификации – предотвратить попытку выдать себя за другого человека. Аутентификация означает проверку или доказательство того, что вы действительно являетесь тем человеком, имя которого вы назвали [37]. Подтвердить личность может что-то или кто-то с доказательствами, значимыми с юридической точки зрения (например, служебное удостоверение, водительские права или некоторые подробности жизни человека, имя которого было названо). Важно, чтобы доказательства, подтверждающие вашу личность, были однозначно связаны с вами (например, фотография на удостоверении, отпечатки пальцев или что-то другое, характерное только для вас, не допускающее двусмысленного толкования). В примере с винным магазином вы можете подтвердить личность, показав водительские права с фотографией. Сравнение вашего лица с фотографией в правах соответствует процедуре верификации. Если вы действительно выглядите так же, как на фото, то аутентификация считается успешной. В противном случае аутентификация не пройдена. Сопоставление лица человека с фотографией в водительских правах дает возможность предотвратить попытку незаконного использования чужих документов.
Авторизация
Авторизация означает предоставление доступа к конкретно определенным ресурсам или услугам в соответствии с характеристиками или свойствами личности, подлинность которой установлена [37]. Авторизация представляет собой последовательность успешной процедуры аутентификации и дальнейшего определения характеристик или прав установленной личности. В примере с винным магазином авторизация означает принятие решения о возможности покупки вами бутылки вина на основе даты рождения, указанной в водительских правах. Сотрудник магазина может отказать вам, если по дате рождения в документе определит, что вы несовершеннолетний. Отметим, что в данном случае отказ происходит не из-за неудачной аутентификации. Процедуры идентификации и аутентификации были пройдены успешно, но именно благодаря корректной идентификации сотрудник магазина смог определить, что вы несовершеннолетний. Таким образом, авторизация всегда является результатом определения по некоторым заданным правилам характеристик и/или свойств личности, установленной перед этим с помощью процедуры аутентификации.
Примечание
Идентификация означает объявление своего имени. Аутентификация означает доказательство того, что вы действительно являетесь тем человеком, именем которого назвались. Авторизация означает получение доступа к чему-либо на основании предварительно проведенной успешной процедуры аутентификации с целью подтверждения личности.
На рис. 6.2 показано, каким образом доказательство права владения и передача права владения связаны с целями и свойствами реестра (ledger).