Spec-Zone .ru
спецификации, руководства, описания, API
Содержание документации

Проверка RSA Подписанные Апплеты в Плагине Java

Java Богатое Руководство по Интернет-приложениям > Безопасность> Проверка RSA Подписанные Апплеты в Плагине Java

Следующие темы затрагиваются:

Введение

Эта страница обеспечивает краткий обзор того, как проверка RSA подписанные апплеты реализуется в Плагине Java. Для краткого обзора того, как использовать RSA подписанные апплеты, см. Развертывающиеся RSA-подписанные Апплеты в Плагине Java.

Поддержка Проверки RSA

Чтобы включить проверке подписей RSA независимым от браузера способом, Плагин Java включает Провайдер криптографических служб (CSP). CSP поддерживает "MD2withRSA", "MD5withRSA", и алгоритмы цифровой подписи "SHA1withRSA". Это автоматически регистрируется в Java Криптографическая платформа Архитектуры как часть статического инициализатора PluginClassLoader.

Поддержка Динамического Доверительного управления

У Java SE есть мелкомодульное управление доступом, основанное на "codesource" и "домене защиты". У каждого class, который загружается из файла JAR, есть codesource, который инкапсулирует два сведения:

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

PluginClassLoader проверяет сконфигурированную политику безопасности, чтобы определить который полномочия предоставить данному codesource. codesource и набор полномочий, предоставленных этому тогда, формируют домен защиты. Это поведение характерно для всех, защищают classloaders (то есть, экземпляры java.security.SecureClassLoader).

sun.plugin.security.PluginClassLoader расширяет sun.applet.AppletClassLoader, который является подклассом java.net.URLClassLoader, который поочередно расширяет java.security.SecureClassLoader. PluginClassLoader делает дополнительную работу: Если апплет подписывается, и полномочия, предоставленные ему, не включают специальное предложение usePolicy разрешение, PluginClassLoader извлекает подписывающие лица (и их цепочки сертификата поддержки) от codesource апплета и пытается проверить их.

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

Для случая апплетов без знака, или подписанных апплетов, полномочия которых включают usePolicy, см. Безопасность.

usePolicy Разрешение

Разрешение называют usePolicy позволяет системным администраторам выключать PluginClassLoader поведение. Если usePolicy разрешение предоставляет codesource сконфигурированная политика безопасности, никакой пользователь, запрашивающий, не будет иметь место. Только полномочия, определенные в политике безопасности, предоставят codesource.


Oracle и/или его филиалы Авторское право © 1993, 2012, Oracle и/или его филиалы. Все права защищены.
Свяжитесь с Нами