АДМИНИСТРИРОВАНИЕ УПРАВЛЕНИЯ ДОСТУПОМ В БЕСПРОВОДНЫХ СЕТЯХ
MANAGEMENT OF ACCESS CONTROL IN WIRELESS NETWORKS

Область техники
Настоящее изобретение относится в целом к компьютерной безопасности. Более конкретно, настоящее изобретение касается защиты информации в распределенных системах и взаимодействия пользователя с такими системами.
Предпосылки создания изобретения
Данный раздел предназначен дать представление о предпосылках или контексте создания изобретения. Описание может включать концепции, которые могли быть осуществлены, но не обязательно были ранее задуманы или осуществлены. Поэтому если иное не указано здесь, то описанное в этом разделе не является известным уровнем техники в отношении формулы изобретения в этой заявке.
Большинство текущих исследований в области защиты рассматривает теорию и технику защиты информации (например, криптографию, алгоритмы, протоколы), которые стремятся предлагать гарантии высокой безопасности. Однако в реальных условиях эксплуатации люди обычно являются самым слабым звеном в защите. Даже опытные пользователи компьютеров часто находят защиту устрашающе сложной или затруднительной, применяют ее частично или совсем не используют.
Одно из применений защиты связано с сетевыми системами, такими как домашние сети из компьютеров, телевизионной аппаратуры, телефонов и других устройств. Организация "Альянс цифровых сетей для дома" (DLNA) специфицировала продукты для таких сетевых "умных домов": Digital Living Network Alliance (DLNA), "Home Networked Device Interoperability Guidelines v1.0", June 2004. Пользователями этого продукта являются неспециалисты, каждодневные потребители, что только усиливает проблему взаимодействия с защитой. Таким образом, имеется потребность в удобных в эксплуатации механизмах защиты и реальных интуитивных абстракциях защиты.
Чтобы обеспечить защиту в "интеллектуальном пространстве" сетевых устройств, должно быть реализовано широкое разнообразие механизмов защиты и протоколов на различных уровнях, таких как защита на канальном уровне (например, см. документы группы разработчиков Bluetooth (например, Bluetooth Special Interest Group: "Specification Vol.1, Specification of the Bluetooth System, Core", version 1.1, February 22 2001; Bluetooth SIG, "Bluetooth Security Architecture", White Paper, version 1.0, 15 July 1999; стандарты IEEE 802.1X, "802.1x-2001 - Port Based Network Access Control", June 2001; IEEE 802.1H, "802.11 Amendment 6: Medium Access Control Security Enhancements", July 2004), защита на сетевом уровне протокола Интернет (IP) (см., например, документ рабочей группы IETF Network Working Group, "RFC2401: Security Architecture for the Internet Protocol", November 1998), защита на транспортном уровне (например, IETF Network Working Group, "RFC2246: The TLS Protocol, v1.0", January 1999; IETF Network Working Group, "RFC2818: HTTP over TLS", May 2000) или защита на прикладном уровне (см. например, документ UPnP Forum, "UPnP Security Ceremonies Design Document v1.0", October 3, 2003). Каждый из этих механизмов защиты требует различных форм взаимодействия пользователя, чтобы он сконфигурировал характеристики защиты системы в соответствии со своими целями.
Примеры традиционных подходов для управления доступом сетевых устройств включают применение ключей соединения, персональных идентификационных номеров (PIN), паролей, списков контроля доступа (ACL), фильтрацию физических адресов, создание учетных записей администратора и гостя и их опций, сертификаты, санкционирование сертификатов, подходы, связанные с парами секретных (индивидуальных)/открытых ключей доступа, опциями аутентификации и авторизации и т.д. В зависимости от того, какие механизмы защиты и возможности выбора реализованы в основной инфраструктуре защиты, пользователь должен предпринять множество различных действий и выполнить различные задачи, по существу, чтобы достигнуть той же самой цели на уровне пользователя. Потребители-неспециалисты вообще не используют защиту из-за высокого уровня сложности в большинстве систем защиты.
Таким образом, имеется потребность в уровне косвенности программного обеспечения промежуточного слоя (middleware), который отделяет принципы защиты и показывает пользователям только интуитивные понятия защиты, которые могут быть легко поняты, независимо от протоколов и алгоритмов, используемых в основной инфраструктуре защиты. Кроме того, есть потребность в более простом администрировании управления доступом в сетевых пространствах. Далее имеется потребность улучшить опыт пользователя в управлении доступом устройств в сети устройств.
Сущность изобретения
В целом настоящее изобретение обеспечивает решение проблемы создания единообразного и интуитивного взаимодействия пользователя для администрирования управлением доступом в "интеллектуальных пространствах" независимо от конкретных основных механизмов защиты. Согласно приводимым в качестве примера формам осуществления изобретения, описанным здесь, владельцы связанных сетью устройств могут использовать инструментальные средства на уровне пользователя, чтобы создавать объекты, названные "пропусками" (passlets), и вручать эти пропуска другим пользователям, которые могут тогда получать доступ на уровне возможности подключения и уровне устройства к функциональным возможностям, предписанным этими пропусками. Пропуска представляют собой воспринимаемые пользователем объекты, действующие как "права на допуск" или "билеты", которые предоставляют воспринимаемые пользователем права доступа высокого уровня для их предъявителей. Устройства, генерирующие эти пропуска (называемые Passlet Generating Devices - PGD), используют инструментальные средства на уровне пользователя, чтобы собирать данные о намерениях пользователя единообразным и интуитивно понятным способом. Устройства PGD также вносят в пропуска необходимую информацию (обычно невидимую для пользователя), которая позволяет компонентам программного обеспечения промежуточного слоя транслировать намерения пользователя на высоком уровне в определенные параметры настройки и параметры в зависимости от основной структуры защиты, реализованной в зоне, охваченной сетью, или "интеллектуальном пространстве".
Одна приводимая в качестве примера форма осуществления изобретения касается способа управления доступом для устройств в сети. Способ включает обеспечение интерфейса между инструментом на уровне пользователя в первом устройстве, подключенном к сети и компонентам защиты, связанным с сетью, осуществление связи между инструментом на уровне пользователя и интерфейсом, проверку права на доступ во втором устройстве в сети, где права на доступ основаны на данных от инструмента на уровне пользователя, и обеспечение первому устройству ответа, основанного на проверке права на доступ.
Другая приводимая в качестве примера форма осуществления изобретения касается устройства, имеющего запрограммированные команды для управления доступом к устройствам в сети. Устройство включает программное обеспечение промежуточного слоя для пропусков, включающее базу данных для хранения пропусков. Пропуска содержат права на доступ, специфические для конкретного пользователя и предназначенные для получения доступа к одному или более сетевым устройствам. Устройство дополнительно содержит запрограммированные команды, обеспечивающие интерфейс пользователя для выбора пропусков из базы данных для хранения пропусков. Кроме того, устройство дополнительно содержит интерфейс связи, сконфигурированный так, чтобы передавать выбранный пропуск на сетевое устройство для запроса доступа к нему.
Еще одна приводимая в качестве примера форма осуществления изобретения касается системы администрируемого управления доступом устройств в сети. Система содержит первое устройство, подключенное к сети, и второе устройство, подключенное к сети. Первое устройство содержит базу для хранения пропусков, определяющих права на доступ к устройствам в сети. Первое устройство содержит также инструмент на уровне пользователя и интерфейс между инструментом на уровне пользователя и компонентами защиты. Инструмент на уровне пользователя позволяет выбор пропуска из базы для хранения пропусков и передачу выбранного пропуска в интерфейс. Второе устройство проверяет право на доступ на основании выбранного пропуска, передаваемого с интерфейса на второе устройство. Второе устройство обеспечивает ответ первому устройству на основании проверки права на доступ в пропуске.
Еще одна приводимая в качестве примера форма осуществления изобретения касается программного продукта для компьютера, позволяющего управление доступом устройств в сети. Программный продукт для компьютера содержит машинный код для обеспечения интерфейса между инструментом на уровне пользователя в первом устройстве, подключенном к сети, и компонентами защиты, связанными с сетью, чтобы осуществлять связь между инструментом на уровне пользователя и интерфейсом, проверять право на доступ во втором устройстве в сети и обеспечивать ответ первому устройству на основе проверки права на доступ.
Краткое описание чертежей
На фиг.1 изображена косвенность, вводимая механизмом пропусков, чтобы показывать единообразное и интуитивное взаимодействие пользователя с защитой для управления доступом независимо от основной структуры защиты, в соответствии с приводимой в качестве примера формой осуществления изобретения.
На фиг.2 показан пример умного дома, использующего универсальные устройства, поддерживающие технологию универсальной автоматической настройки сетевых устройств (UPnP) (по принципу "включай и работай"), в соответствии с приводимой в качестве примера формой осуществления изобретения.
Фиг.3 является иллюстрацией примера выполнения инструмента на уровне пользователя для создания пропусков с использованием мобильного устройства в соответствии с приводимой в качестве примера формой осуществления изобретения.
Фиг.4 является иллюстрацией примера выполнения инструмента на уровне пользователя для приема и рассмотрения пропусков в соответствии с приводимой в качестве примера формой осуществления изобретения.
Фиг.5 является иллюстрацией примера взаимодействия пользователя для владельца "интеллектуального холодильника", чтобы предоставить доступ посетителю, использующему пропуск, в соответствии с приводимой в качестве примера формой осуществления изобретения.
Фиг.6 является иллюстрацией структуры содержания пропуска согласно первой форме осуществления изобретения.
Фиг.7 является иллюстрацией структуры содержания пропуска согласно второй форме осуществления изобретения.
Фиг.8 является иллюстрацией структуры содержания пропуска согласно третьей форме осуществления изобретения.
Фиг.9 является иллюстрацией выполнения механизма пропусков для управления доступом в верхней части архитектуры устройства UPnP в соответствии с приводимой в качестве примера формой осуществления изобретения.
Фиг.10 является иллюстрацией выполнения логики установления сеанса работы с пропуском в соответствии с приводимой в качестве примера формой осуществления изобретения.
Фиг.11 является иллюстрацией выполнения логики пункта управления для доступа к удаленному устройству, поддерживающему технологию универсальной автоматической настройки сетевых устройств (UPnP), в соответствии с приводимой в качестве примера формой осуществления изобретения.
Фиг.12 является иллюстрацией реализации логики удаленного устройства для решения, предоставлять ли доступ для запрашиваемой операции, в соответствии с приводимой в качестве примера формой осуществления изобретения.
Подробное описание приводимых в качестве примера форм осуществления изобретения
Фиг.1 иллюстрирует сравнение обычного взаимодействия пользователя для получения управления доступом с предоставлением управления доступом путем использования механизма пропуска. Механизм пропуска обеспечивает интуитивно понятное взаимодействие пользователя для управления доступом независимо от основной структуры защиты. По существу, пользователи-неспециалисты могут управлять доступом к устройствам в интеллектуальном пространстве, таком как "умный дом" по стандарту Консорциума интегрированной цифровой сети (DLNA), без показа им сложности основной инфраструктуры защиты.
А
A
A
B
B
B
При типичном взаимодействии пользователя его домен содержит инструментальные средства на уровне пользователя, такие как средства 12 и средства 14, имеющие инфраструктуры защиты. Инструментальные средства 12 могут включать механизмы защиты Х, Y, Z, такие как WEP-ключи по стандарту IEEE 802.11 (WEP, Wired Equivalent Privacy (защищенность, эквивалентная таковой проводных сетей) - протокол безопасности, определенный стандартом IEEE 802.11b, был разработан для обеспечения уровня безопасности, аналогичного тому, какой существует в проводных локальных сетях), АР SSID по стандарту IEEE 802.11 (SSID, Service Set Identifier (идентификатор набора услуг) - уникальное наименование беспроводной сети, отличающее одну сеть от другой; АР, Access point - точка доступа), список контроля доступа (ACL), содержащий разрешенные адреса MAC в АР по стандарту IEEE 802.11, учетное имя пользователя и пароль на медиасервере, а также права на чтение в каталоге. Инструментальные средства 14 могут включать механизмы защиты Х, Y, Z, такие как ключи доступа Bluetooth (ВТН) для соединения с точкой доступа по технологии ВТН, учетная запись пользователя протокола РРР (протокола двухточечного соединения) в точке доступа по технологии ВТН, учетное имя пользователя и пароль на сервере аутентификации доверенной 3-й стороны, билеты от сервера аутентификации доверенной 3-й стороны с сеансовыми ключами для медиасервера, а также права на чтение в каталоге.
Инструментальные средства 12 и 14 используются для взаимодействия пользователя, чтобы предоставить ему управление доступом. Эти инструментальные средства непосредственно взаимодействуют с системными компонентами 16 и 18 защиты домена. Компоненты защиты 16 и 18 могут содержать платформу, протоколы, криптографические алгоритмы и другие компоненты защиты. В тех случаях, когда инструментальные средства 12 на уровне пользователя и/или инструментальные средства 14 на уровне пользователя взаимодействует непосредственно с инфраструктурой защиты, такой как компоненты 16 и/или 18 защиты, это взаимодействие осуществляется на канальном уровне и прикладном уровне. По существу, взаимодействие может изменяться в зависимости от инфраструктуры защиты.
1
2
Введение программного обеспечения промежуточного слоя между инструментальными средствами пользователя и инфраструктурой защиты позволяет обеспечить трансляцию взаимодействий между инструментальными средствами пользователя и инфраструктурой защиты. По существу, взаимодействия могут быть сделаны единообразными независимо от вида инфраструктуры защиты. Программное обеспечение промежуточного слоя может содержать любое многообразие абстракций, чтобы сопрягать домен пользователя и домен системы. Пропуск является примером обобщающей абстракции для осуществления этого сопряжения. Согласно приводимой в качестве примера форме осуществления изобретения инструментальные средства 22 пропуска на уровне пользователя используются для сопряжения со средствами 24 программного обеспечения промежуточного слоя для пропуска, которые взаимодействует с компонентами 26 и 28 защиты. Инструментальные средства 22 пропуска на уровне пользователя могут содержать механизмы U, U, например "пропуска" (passlets), которые позволяют доступ к кинофильму в открытом каталоге медиасервера в течение одного дня независимо от особенностей основной инфраструктуры защиты. Инструментальные средства 22 пропуска на уровне пользователя постоянно находятся в устройствах, которые действуют как пункты взаимодействия с пользователями, собирая намерения пользователя. Программное обеспечение 24 промежуточного слоя для пропуска транслирует намерение пользователя в специфические параметры настройки и конфигурации основной инфраструктуры защиты. Компоненты 26 и 28 защиты могут содержать платформу, протоколы, криптографические алгоритмы и другие компоненты обеспечения безопасности. В качестве примера, инструментальные средства 22 пропуска на уровне пользователя могут использоваться в мобильном устройстве, чтобы позволять посетителю в каком-либо местоположении использовать видеосервер в этом местоположении для просмотра определенного кинофильма в открытом каталоге.
Программное обеспечение 24 промежуточного слоя для пропуска преобразует интуитивные понятия пользователя, выражающие его намерение, в определенные параметры настройки и конфигурации основной инфраструктуры защиты. Например, программное обеспечение 24 промежуточного слоя для пропуска может преобразовать намерение пользователя в вышеупомянутом примере в ключи соединения, передаваемые на устройство посетителя, чтобы дать возможность ему присоединиться к точке доступа (АР), добавить МАС-адрес устройства посетителя к списку управления доступом (ACL) к среде MAC точки доступа, создать временную учетную запись (например, user_name/password (имя пользователя/пароль)) для посетителя на видеосервере, передать user_name/password на устройство посетителя и добавить под этой временной учетной записью список кинофильмов, разрешенных этому посетителю для доступа, и т.д. Все эти взаимодействия происходят прозрачно для пользователя с помощью программного обеспечения 24 промежуточного слоя для пропуска, которое постоянно находится во всех подключенных устройствах, принадлежащих сети интеллектуального пространства. По существу, инструментальные средства 22 пропуска на уровне пользователя и программное обеспечение 24 промежуточного слоя для пропуска обеспечивают единообразный и интуитивно понятный механизм взаимодействия пользователя с компонентами 26 и 28 защиты, не показывая каких-либо особенностей основных механизмов защиты.
Согласно приводимым в качестве примера различным формам осуществления изобретения общие свойства пропуска могут включать следующее. Пропуска предоставляют доступ пользователям или группам пользователей, а не устройствам. Эмитентом пропуска является один из владельцев целевого устройства. Пропуск может предоставлять доступ более чем к одному устройству или более чем к одной группе устройств, принадлежащих эмитенту. После приема пропуска в свое устройство пользователь может переместить пропуск в другое устройство и использовать его, чтобы получить предписанный им доступ. Имеющие законную силу пропуска автоматически дают их пользователям возможность подключения для доступа к домашней сети. Злонамеренный пользователь, который получает копию пропуска для устройства, не может использовать ее для доступа к устройству. Пропуска различны для каждого вида устройства, к которому они обеспечивают доступ. Пользователи настраивают специфический для типа устройства шаблон пропусков, чтобы позволить временный доступ к конкретным функциональным возможностям. Например, "однодневный пропуск к медиасерверу" может позволять посетителю (гостю) Джону воспроизводить кинофильм из /открытого/ каталога медиасервера на своем устройстве, но не записывать его, в течение одного дня. Точно так же "однолетний пропуск к принтеру" может позволять новому соседу по комнате Мэри печатать на принтере собственника, но не конфигурировать его, в течение одного года. Пропуска могут быть отменены эмитентом в любое время.
Инфраструктура, создаваемая при помощи инструментальных средств 22 пропуска на уровне пользователя и программного обеспечения 24 промежуточного слоя для пропуска, имеет дело с управлением доступом на двух уровнях, не показывая их различие пользователям. Этими двумя уровнями являются коммуникационный уровень и уровень устройства (или услуги). Относительно коммуникационного уровня, чтобы любое устройство было способно отыскивать или взаимодействовать с любым из сетевых устройств, формирующих интеллектуальное пространство, это устройство должно сначала получить доступ на уровне звена/сети к сети, к которой эти устройства подключены. Управление доступом на этом уровне гарантирует, что только должным образом аутентифицированные и авторизованные устройства получают доступ посредством соединения к сети интеллектуального пространства. Относительно уровня устройства (или уровня услуги), все подключенные устройства в интеллектуальном пространстве показывают несколько функциональных возможностей, которые могут удаленно использоваться другими устройствами, подключенными к той же самой сети интеллектуального пространства. Управление доступом на этом уровне гарантирует, что только должным образом аутентифицированные и авторизованные устройства могут получить возможность подключения ко всем функциональным возможностям, показываемым каждым из подключенных устройств в интеллектуальном пространстве, или к подмножеству этих возможностей.
Фиг.2 иллюстрирует приводимую в качестве примера систему 30 интеллектуального пространства, которая использует пропуска, описанные со ссылкой на фиг.1. Система 30 интеллектуального пространства содержит сетевые устройства, которые используют архитектуру распределенных вычислений, поддерживающую технологию универсальной автоматической настройки сетевых устройств (UPnP). Однако может использоваться и любая другая архитектура распределенных вычислений. Сетевые устройства в системе 30 интеллектуального пространства подключены с помощью проводных и беспроводных (например, Bluetooth, 802.11) технологий канального уровня, формирующих локальную сеть Ethernet, которая представляет сеть интеллектуального пространства.
Сетевые устройства на основе технологии UPnP обнаруживаются в пунктах управления (СР) UPnP, которые используются для доступа к сетевым услугам и устройствам/услугам UPnP, которые являются объектами, поддерживающими эти сетевые услуги. В системе 30 интеллектуального пространства пункты управления содержат мобильные устройства 34 и 36, а устройства/услуги UPnP реализуются с помощью устройств 38, 40 и 42. Например, устройство 40 является принтером. В состав системы включены также точки доступа, использующие устройства 44 и 46. Устройство 44 обеспечивает точку доступа по технологии Bluetooth, а портативный компьютер 46 обеспечивает точку доступа по стандарту IEEE 802.11. В системе 30 интеллектуального пространства используется внешний механизм, чтобы сделать возможным безопасный двусторонний обмен информацией посредством "поднесения" (touch) одного устройства к другому или связь "перебрасыванием информации" (ping) между устройствами. Примеры технологий, допускающих такое "поднесение" или подключение, включают связь в инфракрасном диапазоне, радиочастотную связь ближнего действия (NFC) и радиочастотную идентификацию (RFID).
Фиг.3-5 иллюстрируют пример реализации инструментального средства на уровне пользователя для мобильных устройств. Это средство на уровне пользователя собирает намерение пользователя для администрирования управления доступом с использованием механизма пропуска. На интерфейсе 52 (фиг.3) пользователю телефона-"отправителя" или устройства, способного создавать пропуска для некоторых устройств в сети, представляется список устройств, для которых могут быть созданы пропуска. Пропуска могут создаваться для устройств, которыми конкретный пользователь "владеет" или к которым он имеет права определять доступ. После выбора желаемого устройства появляется видоизменяемый пропуск с настройками по умолчанию, соответствующими типу устройства, которое выбрал пользователь. На фиг.3 на интерфейсе 54 показан пример пропуска для принтера, а на интерфейсе 56 - пример пропуска для медиасервера. Пользователь может изменить настройки по умолчанию в соответствии с уровнем доступа, который он желает предоставить. После создания пропуска пользователь передает его устройству того человека, которому он желает дать пропуск. Предусмотрен интерфейс 58, посредством которого пользователь подключается для передачи пропуска с помощью инфракрасного излучения на устройство получателя. В альтернативных формах осуществления изобретения передача выполняется с помощью другой технологии, позволяющей передачу данных посредством "поднесения" (touch) одного устройства к другому. Как только получатель принимает пропуск, его изображение устройств в сети изменяется. Обмен пропусками может выполняться с использованием внеполосного механизма, такого как подключение "поднесением", или по сети в зависимости от того, как спроектированы пропуска.
На фиг.4 показан интерфейс 62 на получающем устройстве, принявшем пропуск. Интерфейс 64 показывает полученный пропуск, а свойства пропуска показаны на интерфейсе 66. Как показано на фиг.5, устройство 74 получателя пропуска для холодильника от устройства 72 отправителя может теперь видеть, что оно имеет доступ к холодильнику. Перед приемом пропуска устройство 74 получателя имело интерфейс 76, который показывал блокировку или отсутствие доступа к устройству. После того как устройство 74 получателя приняло пропуск, интерфейс 78 показывает доступ к холодильнику. Согласно приводимой в качестве примера форме осуществления изобретения, когда устройство невладельца (такое как устройство, которое принимает пропуск) пытается печатать, оно сначала смотрит, чтобы увидеть, имеет ли оно пропуск для устройства, к которому пытается получить доступ. Если никаких прав доступа, предоставляемых пропуском, не существует (другими словами, это попытка получить доступ в первый раз), пропуск посылается целевому устройству, которое проходит через процесс аутентификации. После того как устройство аутентифицировано, как целевое устройство, так и устройство невладельца или получающее устройство сохраняют в своей базе данных для хранения пропусков запись, показывающую санкционирование доступа. При последующих попытках доступа эта запись в базе данных для хранения пропусков может использоваться для того, чтобы отказаться от процесса аутентификации. Эта запись может потерять силу по окончании срока действия или может быть отменена так, что снова потребуется передать пропуск и выполнить процесс аутентификации.
На фиг.6-8 показаны примеры структур пропусков. Три различных реализации приведены только с целью объяснения и не должны быть истолкованы как ограничивающие данное изобретение. Реализации гарантируют, что содержание пропуска не может быть прочитано никаким устройством помимо того, к которому пропуск предоставляет доступ. Эта возможность может быть обеспечена зашифрованием пропуска открытым ключом того устройства, к которому предоставляется доступ. Если пользователь создает пропуск для своего принтера, то только этот принтер должен быть способен читать содержание пропуска. Реализация также гарантирует аутентичность пропуска. Это свойство может быть обеспечено подписанием пропуска секретным ключом того пользователя, который генерировал пропуск. Если пользователь создает пропуск для своего принтера, то принтер после расшифровки пропуска его секретным ключом может проверить, что пропуск был сгенерирован авторизованным пользователем, проверив подпись по списку авторизованных пользователей.
На фиг.6 показан пример структуры 80 пропуска, в которой устройство пользователя, получающего пропуск, принимает также информацию (например, идентификатор точки доступа, ключи соединения точки доступа), необходимую для получения возможности подключения к сети интеллектуального пространства. Эта информация 82 предназначена для устройства получателя пропуска и может быть удалена при передаче пропуска на целевое устройство. Информация 82 может содержать идентификатор устройства, права доступа, идентификатор точки доступа, срок действия и другую информацию, касающуюся управления доступом.
На фиг.7 показано расширение для примера структуры пропуска, описанной со ссылкой на фиг.6. Структура 90 пропуска на фиг.7 позволяет пользователю получить возможность подключения к сети посредством посылки пропуска в точку доступа к сети. Точка доступа к сети проверяет, что пропуск был сгенерирован устройством, которое авторизовано делать это, - в данном случае тем устройством, которое знает некоторую совместно используемую секретную информацию, называемую секретом дома. Затем она дает устройству пользователя параметры защиты, необходимые для подключения к сети. Информация 94 предназначена для точки доступа (АР). Точка доступа расшифровывает и выполняет аутентификацию пользователя с помощью идентификатора пользователя. Затем точка доступа предоставляет возможность подключения для доступа к устройству в течение разрешенного времени. После подключения к точке доступа пропуск посылается на целевое устройство для дальнейшей обработки.
На фиг.8 показан пример реализации структуры 100 пропуска, в которой полное содержание пропуска, описанное со ссылкой на фиг.6, также зашифровано открытым ключом того пользователя, который должен получить пропуск. Эта возможность позволяет декодировать пропуск только его назначенному получателю, и поэтому пропуск может передаваться по недостоверным сетям. Структура 100 пропуска является лучшей для менее безопасных сетей, потому что все содержание шифруется.
На фиг.9-12 показан пример реализации программного обеспечения промежуточного слоя для пропуска в устройствах, которые соответствуют архитектуре распределенных вычислений по стандарту UPnP. Как пункт 110 управления, так и удаленное устройство 112 имеют резидентное программное обеспечение промежуточного слоя для пропуска. Пункт 110 управления содержит программное обеспечение 114 промежуточного слоя для пропуска с базой 116 данных для хранения пропусков и достоверную базу 118 данных. Программное обеспечение 114 промежуточного слоя для пропуска включает клиентский интерфейс 120, который взаимодействует с удаленным устройством 112, чтобы устанавливать сеансы передачи пропусков и отменять пропуска. Программное обеспечение 114 промежуточного слоя для пропуска доступно через приложение 122 пункта управления и интерфейс прикладного программирования (API) приложений интерфейса пользователя (UI). Программное обеспечение 114 промежуточного слоя для пропусков взаимодействует с программным обеспечением 124 промежуточного слоя для технологии UPnP. Удаленное устройство 112 содержит программное обеспечение 130 промежуточного слоя для пропусков, которое содержит базу данных 132 для хранения пропусков и интерфейс 134 сервера. Программное обеспечение 130 промежуточного слоя для пропусков удаленного устройства 112 взаимодействует с программным обеспечением 136 промежуточного слоя для технологии UPnP. Программное обеспечение 124 промежуточного слоя для технологии UPnP пункта 110 управления и программное обеспечение 136 промежуточного слоя для технологии UPnP удаленного устройства 112 могут обмениваться сообщениями UPnP расширенной защиты, такими как сообщения простого протокола доступа к объектам (SOAP). Программное обеспечение 136 промежуточного слоя для технологии UPnP включает компоненты 138, 140 и 144 защиты для множества устройств.
Для примера, пользователь по имени Джим создал пропуск для своего принтера и дал его Бобу, подключившись "поднесением" к мобильному телефону Боба. Боб хочет напечатать документ, который он имеет на своем телефоне, поэтому после просмотра сети и обнаружения принтера, Боб пытается подключиться к нему. Тогда принтер проверяет, имеет ли Боб уже соответствующие права для доступа к нему, и отвечает отрицательным ответом. Отрицательный ответ является результатом того, что в этот момент принтер не знает о пропуске. Телефон Боба выполняет поиск в своем архиве пропусков и видит, что он имеет пропуск для принтера. Пропуск посылают принтеру, который расшифровывает его и проверяет, что пропуск имеет законную силу. После выполнения этого устанавливается "сеанс" работы с пропуском, посредством которого принтер генерирует общий сеансовый ключ, который он использует во время всей дальнейшей связи с Бобом в течение срока действия пропуска. Все действия протокола SOAP, которые Боб затем передает на принтер, проверяются на уровень доступа, указанный в пропуске.
На фиг.10-12 процедуры передачи пропуска показаны более подробно. Фиг.10 иллюстрирует операции, выполняемые в примере реализации логики установления сеанса связи с пропуском. Дополнительное, меньшее число операций или другие операции могут выполняться в зависимости от формы осуществления изобретения. Во время операции 151 пункт 150 управления стремится установить сеанс связи с целевым устройством 152 для работы с пропуском. Пропуск передают целевому устройству 152 во время операции 153. Во время операции 155 целевое устройство 152 принимает пропуск из пункта 150 управления. Целевое устройство 152 расшифровывает и проверяет целостность пропуска во время операции 157. В течение ряда операций (операции 159-167) целевое устройство 152 проверяет подпись владельца пропуска, выполняет аутентификацию идентификатора удаленного пользователя, проверяет идентификатор целевого устройства, согласует сеансовые ключи и создает в базе данных для хранения пропусков запись с сеансовыми ключами, разрешаемыми действиями, временем и т.д. Если какая-либо из операций 159-167 не достигает успеха или вызывает ошибку, то сигнал такого состояния передается обратно в пункт 150 управления во время операции 169.
Если в пункте 150 управления во время операции 171 получен сигнал ошибки, он обрабатывается во время операции 173 и пользователь уведомляется об этом операцией 175. Если никакого сигнала ошибки не получено, выполняется последовательность операций (операции 177-183), во время которой пункт 150 управления проверяет свой идентификатор пользователя, выполняет аутентификацию идентификатора удаленного устройства, согласует сеансовые ключи и обновляет в базе данных для хранения пропусков записи с сеансовыми ключами, допустимыми действиями, временем и т.д. Если какая-либо из операций 177-183 не достигает успеха или выдает ошибку, сигнал ошибки обрабатывается во время операции 173 и пользователь уведомляется об этом операцией 175.
Фиг.11 иллюстрирует операции, выполняемые в примере реализации логики управления для доступа к удаленному устройству UPnP. Дополнительное, меньшее число операций или другие операции могут выполняться в зависимости от формы осуществления изобретения. Во время операции 191 пользователь выбирает функциональные возможности удаленного устройства. В предпочтительной форме осуществления изобретения в базе данных для хранения пропусков выполняется поиск (операция 193), чтобы определить, разрешены ли функциональные возможности (операция 195). Такая возможность является необязательной, но выгодно позволяет избежать передачи сообщений, которые позже отклоняются из соображений безопасности.
Во время операции 197 выбирается следующее действие. Во время операции 199 выполняется определение, установлен ли сеанс работы с пропуском. Если сеанс работы с пропуском не был установлен, то он устанавливается, как описано со ссылкой на фиг.10. Если сеанс работы с пропуском установлен, выполняется операция 201, во время которой посылается сообщение, такое как сообщение SOAP. Если аутентификация не достигает успеха (операция 203) или если сеанс работы с пропуском не может быть установлен (операции 205 и 207), сигнал ошибки обрабатывается во время операции 209. Если аутентификация успешна, обрабатывается ответ на сообщение аутентификации (операция 211) и определяется, необходимы ли дальнейшие действия (операция 213). Операция 215 отображает результаты для пользователя.
Фиг.12 иллюстрирует операции, выполняемые в примере реализации логики удаленного устройства для решения, предоставить ли доступ для запрашиваемого действия. Дополнительное, меньшее число операций или другие операции могут выполняться в зависимости от формы осуществления изобретения. Во время операции 221 принимается сообщение из пункта управления. Просмотр базы данных для хранения пропусков выполняется во время операции 223, и во время операции 225 определяется, был ли установлен сеанс работы с пропуском. Определяется, отменен ли пропуск (операция 227). Выполняется аутентификация сообщения с использованием сеансовых ключей во время операции 229. Если аутентификация не завершается неудачей, доступ разрешается и создается и посылается ответ (операция 231). Если сеанс работы с пропуском не был установлен, если пропуск отменен или если аутентификация не достигает успеха, то в доступе отказывают и формируют соответствующий сигнал ошибки (операция 233). При любом результате он передается в пункт управления операцией 235.
Приведенные в качестве примера формы осуществления изобретения, описанные со ссылкой на фиг.1-12, обеспечивают много преимуществ. Одной из возможностей приведенных в качестве примера форм осуществления изобретения является возможность аннулирования предоставленного доступа. Пользователь может просмотреть пропуска, которые он сгенерировал, и после выбора данного пропуска он может выбрать его отмену. Для примера, если Джим решит отменить пропуск, который он дал Бобу, его телефон пошлет сообщение принтеру, которое сообщит ему, что пропуск отменен. Принтер соответственно изменит свои базовые структуры управления доступом, и если Боб снова попробует связаться с принтером, он будет уведомлен, что не имеет доступа.
Приведенные в качестве примера формы осуществления изобретения позволяют повседневным пользователям легко и безопасно взаимодействовать с множеством сетевых устройств. Современные структуры защиты требуют слишком много от пользователей с точки зрения и специальных знаний, и времени. Как описано, можно скрыть подробности защиты нижнего уровня от пользователя. Пользователь не должен ничего знать о списках контроля доступа, шифровании, секретных/открытых ключах и т.д. Пропуска отделяют параметры защиты, лежащие в основе, и представляют пользователям материальный объект, который они могут просто передавать другим людям. Кроме того, пропуска являются гибкими в отношении их содержания, что позволяет разработчикам использовать их в ряде сценариев и с различными основными механизмами защиты.
Хотя были описаны несколько форм осуществления изобретения, должно быть понятно, что модификации и изменения будут очевидны для специалистов в той области техники, к которой относится изобретение. Соответственно прилагаемая к этому описанию формула изобретения предназначена для того, чтобы более точно определить объем изобретения.