Поделиться через


Установка возможностей хранилища сертификатов (HTML)

[ Эта статья адресована разработчикам приложений среды выполнения Windows для Windows 8.x и Windows Phone 8.x. При разработке приложений для Windows 10 см. раздел последняя документация]

Место хранения сертификатов, предназначенных для использования в определенном контейнере приложения, зависит от пользователя и контейнера приложения. Приложение, выполняющееся в контейнере, имеет доступ на запись только к своему хранилищу сертификатов. В Windows 8.1 приложение имеет также доступ на чтение ко всем хранилищам сертификатов локального компьютера, кроме хранилищ MY и REQUEST.

Когда в устройство чтения смарт-карт вставляется смарт-карта, действие сертификатов и ключей, содержащихся на карте, распространяется на хранилище MY пользователя, где любое выполняемое пользователем приложение с полным доверием может совместно использовать эти ключи и сертификаты. Однако по умолчанию контейнеры приложения лишены доступа к пользовательскому хранилищу MY.

Устранить эту проблему и разрешить группам субъектов доступ к группам ресурсов можно с помощью модели изоляции для контейнера приложения, поддерживающей концепцию возможностей. Возможность — это атрибут, который обеспечивает процессу контейнера приложения доступ к конкретному ресурсу. Например, возможность sharedUserCertificates предоставляет контейнеру приложения доступ на чтение к сертификатам и ключам, находящимся во всех хранилищах пользователя и в хранилище доверенных корневых сертификатов смарт-карты. Кроме того, эта возможность предоставляет контейнеру приложения доступ на запись на смарт-карту, что позволяет включить регистрацию сертификатов без участия торгового посредника для смарт-карт.

Возможность sharedUserCertificates указывается в манифесте, как показано в следующем примере.


<Capabilities>
    <Capability Name="sharedUserCertificates" />
</Capabilities>

Связанные разделы

Общие хранилища сертификатов

Работа с сертификатами