Приложение и безопасность в Java на уровне пользователя

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

Читать также:  Двухсторонняя очередь (Deque) в C++

С одной стороны, простой акт запуска приложения на Java дает ему ресурс — время вычисления, который оно может правильно использовать. Тяжело предотвратить трату вашего времени на ненадежное приложение или даже атаки на систему с целью нарушить нормальное обслуживание пользователей. С другой стороны, мощное, надежное приложение может справедливо заслужить доступ ко всем типам системных ресурсов (например, файловая система, процесс создания, интерфейсы сети); вредоносное приложение может нанести серьезный ущерб этим ресурсам. Суть в том, что важные и иногда сложные проблемы безопасности должны решаться.

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

Цифровые подписи совместно с сертификатами являются техниками проверки того, что данные в действительности исходят от источника, от которого они якобы исходят, и не были изменены по пути. Если компания подписывает свое чековое приложение, вы можете проверить, что приложение действительно идет из этого банка, а не от обманщика, и не было изменено. Соответственно, вы можете сделать так, чтобы ваш браузер доверял апплетам, которые имеют подпись компании. В следующей статье мы поговорим об истории и перспективе развития Java.

Читать также:  Инструкция по выбору (CASE-of-ELSE) в языке Паскаль

С Уважением, МониторБанк

Добавить комментарий