Доступ к объектам IPC
Создание, удаление объектов IPC, а также доступ к ним осуществляются посредством нескольких системных вызовов, описанных в главе Программирование Trusted AIX. Эти операции не выполняются обычными пользователями. В этом разделе представлен общий обзор правил создания и удаления объектов IPC, а также доступа к ним.
Для получения доступа к объекту IPC процесс должен пройти проверки DAC, MIC и MAC.
В основе проверок доступа DAC лежит режим объекта (владелец, группа или глобальный) объекта и ИД пользователя и группы процесса. Процесс получает доступ DAC в качестве владельца к объекту IPC, если действующий UID процесса совпадает с UID владельца или автора объекта. Этот же принцип применяется и к групповому доступу DAC.
Доступ MAC основан на SL процесса и объекта. Доступ MIC основан на TL процесса и объекта.
Правила доступа к содержимому объекта IPC такие же, как и для атрибутов объекта IPC. Для прочтения содержимого или атрибутов объекта IPC требуются права доступа DAC READ, MIC
READ и MAC READ. Для записи в объект
IPC требуются права доступа DAC WRITE, MIC WRITE и
MAC WRITE.
DAC OWNER и MAC WRITE. Для того, чтобы изменить SL объекта IPC, процессу должны быть присвоены все перечисленные ниже права доступа:PV_SL_PROCDAC OWNER(только понижение уровня)DAC WRITEMAC WRITE- Права доступа
PV_SL_UGдля обновления SL или права доступаPV_SL_DGдля понижения уровня SL - п
PV_MAC_CL, если они существуют, или новый SL за пределами допуска процесса MIC WRITE
- права доступа
PV_TL DAC OWNERMAC WRITEMIC WRITE
Кроме того, для того, чтобы заблокировать или разблокировать сегмент общей памяти, процессу необходимы права
доступа PV_KER_IPC_O.
Кроме того, для изменения параметра очереди сообщений msg qbytes в процедуре msgctl процессу также должны быть присвоены права доступа PV_KER_IPC.