Об аутентификации, авторизации и полномочиях
Аутентификация и авторизация является ключевым аспектом компьютерной безопасности. Аутентификация означает определять идентификационные данные пользователя, сервера или клиента. Авторизация означает определять ли тот пользователь, сервер или клиент как разрешение сделать что-то. Полномочия являются настройками на файле или другом объекте, определяющих то, кто или чему позволяют использовать его и что им позволяют сделать с ним. Этот документ описывает способ, которым OS X приближается к аутентификации, авторизации и полномочиям.
Сразу
Как Вы видели в Обзоре безопасности, OS X обеспечивает широкий диапазон технологий безопасности, которые можно использовать при обеспечении приложения и его данных. Аутентификация, авторизация и полномочия в OS X в основном основаны на двух стандартах с открытым исходным кодом: Мах и BSD. Эти технологии находятся в нижнем слое OS X. Криптография, используемая для хранения паролей и другой секретной информации, предоставлена высокоуровневыми технологиями, такими как Общий Crypto. Общий Crypto является технологией открытого исходного кода Apple, предоставляющей поддержку для симметричного и асимметричного шифрования, хеширования и других связанных с криптографией задач.
Поверх этих трех технологий уровни OS X много безопасности APIs (большинство которых находится в уровне Core Services), включая Безопасность Преобразовывает, платформа Интерфейса Безопасности и Keychain Services. Objective C Безопасности API описан в этом документе. Другие описаны в Руководстве по Криптографическим службам.
OS X и iOS Предоставляют Многим Аутентификация и Идентификационные Схемы и Технологии
Существует много различных способов сделать аутентификацию и идентификацию, и OS X обеспечивает много связанных с аутентификацией APIs и элементы UI для помощи Вам. OS X также обеспечивает много функций аутентификации, чтобы помочь Вам интегрировать OS X в корпоративную среду.
Службы авторизации обеспечивают централизованное управление полномочий
Authorization Services API позволяет Вам выполнить привилегированных помощников и позволяет Вам использовать единственный, центральный источник информации для ограничения, какие функции Вашего приложения применимы различными учетными записями в системе. Authorization Services API не поддерживается в поигравших в песочнице приложениях.
Полномочия и предельное поведение программы управления доступом
OS X поддерживает системы полномочий на различных уровнях системы от портов Маха до полномочий файловой системы и мандатного управления доступом.
Части BSD OS X предоставляют фундаментальные услуги, включая пользователя и идентификационную схему группы, политики защиты файловой системы на основе пользователей и групп, и политики сетевой безопасности.
Части Маха ядра OS X предоставляют фундаментальные услуги, включая управление памятью, управление процессами, управление потоком, аппаратную абстракцию (с помощью Набора I/O), и Мах основанная на порте коммуникация. Мах осуществляет доступ путем управления, какие задачи могут отправить сообщение в данный порт Маха, где порт Маха представляет задачу или некоторый другой ресурс Маха.
Предпосылки
Прежде, чем считать этот документ, необходимо быть знакомы с понятиями в Обзоре безопасности и Безопасном Руководстве по Кодированию.
См. также
Для получения дополнительной информации о связанных технологиях рассмотрите следующие документы:
Обзор безопасности — Обеспечивает обзор понятий безопасности
Руководство по Криптографическим службам — Описывает криптографические функции OS X и iOS
Выполнение При Входе в систему — Описывает, как записать плагины служб авторизации для добавления схем аутентификации
Безопасное Руководство по Кодированию — Объясняет, как записать код, который устойчив против дыр в системе безопасности