Forum Webscript.Ru

Программирование => PHP => Тема начата: CGVictor от 22 Мая 2004, 11:11:37

Название: Права скрипта
Отправлено: CGVictor от 22 Мая 2004, 11:11:37
Вопрос:
как узнать из скрипта, под какой учетной записью (user:group, *nix) он выполняется?
Название: Права скрипта
Отправлено: C++ от 22 Мая 2004, 15:11:06
int fileowner (string filename) - Возвращает user ID владельца файла или FALSE - в случае ошибки.

int filegroup (string filename) - Возвращает group ID владельца файла или FALSE в случае ошибки.
Название: Права скрипта
Отправлено: FreeSpace от 22 Мая 2004, 15:54:10
C++
Неправильный ответ.

CGVictor
Не буду утверждать, что что мой ответ на 100% верный, но по-моему тебе стоит взглянуть на это:
[p]posix_getuid[/p], [p]posix_getpwuid[/p],
[p]posix_getgid[/p], [p]posix_getgrgid[/p].
Название: Права скрипта
Отправлено: CGVictor от 24 Мая 2004, 11:17:07
FreeSpace, C++
не, немножко не то. Я просто спросил неверно.

Мне надо узнать, какие права у Апача, под которым работает скрипт. То есть, какая учетная запись используется для запуска скриптов. То, что по умолчанию nobody:nobody.

[off]Просто у хостеров пошла какая-то дурная привычка менять этот nobody. Недавно вот видел apache:8080 и еще много...
[/off]
Название: Права скрипта
Отправлено: FreeSpace от 24 Мая 2004, 19:22:07
CGVictor
Чем тебе мой ответ не подошел?
Название: Права скрипта
Отправлено: CGVictor от 25 Мая 2004, 12:51:40
FreeSpace
Он подошел, просто мне не то нужно было узнать :)

fileowner,group и вообще stat выдадут uid:gid того, кто установлен юзером конкретного файла для скрипта.
А мне нужен uid:gid процесса Апача (от какого uid:gid запущен Апач и ПХП; uid:gid nobody-шелла...)

К примеру, Апач работает с правами nobody:nobody, а юзером файла записан user:8080. Stat выдаст мне второе, тогда как узнать надо первое...

[off]Надеюсь, у меня получилось обьяснить[/off]
Название: Права скрипта
Отправлено: CGVictor от 25 Мая 2004, 12:54:58
FreeSpace
А, нет, стоп - молчу. Похоже, это глюки с ПХП у хостера. Ответ подошел, это в моем конкретном случае не пашет... Буду разбираться...
[off]А еще я тебя с С++ чуть-чуть перепутал... Сорри :)[/off]
Название: Права скрипта
Отправлено: CGVictor от 25 Мая 2004, 13:00:38
FreeSpace
То есть, если по Ману, то
posix_getlogin(); даст мне имя пользователя и
posix_getgrgid(posix_getgid())["name"]; даст мне группу

Спасибо!