2012-01-19 2 views
7

Я проделал некоторую рывку, и основные идеи, которые я видел, плавают вокруг, используют setuid/getuid и используют службы авторизации (которые по какой-то причине дают мне ошибку символа при компиляции, но отображаются теперь устаревать).Программные преимущества для привилегированных приложений OS X

Мое приложение должно иметь возможность запрашивать root-доступ (для доступа к необработанному диску) в определенный момент, желательно с диалогом проверки подлинности OS X (я новичок в OS X, поэтому я понятия не имею, что звонить что).

ответ

2

Служба авторизации довольно хорошо поддерживается AFAIK.

Here's a link to a tutorial (with sample projects!), который вы можете использовать для запуска небольшого инструмента, в котором вы можете получить привилегии администратора, а затем вы можете позвонить API setpriority в ваш вызывающий процесс (документация, связанная с вами).

+0

Спасибо! По какой-то причине я не могу найти, где AuthorizationExecuteWithPrivileges объявляется как когда я #include У меня есть символы для почти всего остального, кроме одной функции – Lander

+0

http://developer.apple.com/library/ mac/# documentation/Security/Reference/authorization_ref/Reference/reference.html говорит, что AuthorizationExecuteWithPrivileges устарел с 10.7. http://stackoverflow.com/questions/6841937/authorizationexecutewithprivileges-is-deprecated имеет некоторую связанную информацию. – Vishal

+0

Whooops ... 'AuthorizationExecuteWithPrivileges' стал« устаревшим »с 10.7. Я смотрю на [Службы служб авторизации] Apple (http://developer.apple.com/library/mac/#documentation/Security/Conceptual/authorization_concepts/03authtasks/authtasks.html#//apple_ref/doc/uid/TP30000995 -CH206-TP9), чтобы узнать, как вы можете ['renice'] (http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man8/renice.8.html) вызов обработать. –

Смежные вопросы