Форсирование привилегий

Помимо возможности проверять права доступа, приложениям теперь можно предоставить и возможность применять детализированное форсирование привилегий во время работы.

Приложения могут повышать привилегии, необходимые для выполнения операции, с помощью API priv_raise, и понижать их с помощью API priv_lower. Повышение привилегий непосредственно перед выполнением привилегированной операции и понижение привилегий после выполнения операции называется форсированием привилегий и является предпочтительным способом использования привилегий приложениями. Для повышения привилегии необходимо, чтобы она присутствовала в максимальном наборе привилегий приложения в базе данных привилегированных команд. В случае повышения привилегия попадает в действующий набор привилегий (EPS) процесса. В случае понижения привилегия удаляется из EPS. В следующем примере кода показано форсирование привилегий вокруг API auditproc.
priv_raise(PV_AU_ADMIN, -1);	/* повысить привилегию при необходимости */ 
auditproc();  			/* вызвать системный вызов контроля */ 
priv_lower(PV_AU_ADMIN, -1);	/* понизить привилегию */