2014-02-18 3 views
1

Я пишу программу PHP для отображения информации о пользователе.Как проверить, отключен ли пользователь в PHP?

Я хочу, чтобы проверить, если пользователь в /и т.д./пароль отключен, так что я должен проверить, если конкретный пользователь имеет пароль, как * или! в /etc/shadow файл.

Вот проблема, мой сервер Apache не имеет доступа к теневому файлу, и я думаю, что чтение теневого файла в любом случае небезопасно.

Может ли кто-нибудь помочь мне с этой проблемой?

+0

кажется совершенно невозможным, без корневого доступа. Вы бы не запускали apache как root? :-) http://www.unix.com/hp-ux/43823-disabled-locked-users.html – mansuetus

ответ

0

I/Fetch результаты с помощью корневого сценария оболочки, выполняемого cron.

for line in /etc/shadow store in /var/www/.../users.status.php 
<?php die("do not open this file"); ?> 
username:Active 
username2:Inactive 
... 

II/Сделать PHP скрипт, который проверяет созданный файл с пользователем представленного значения ...

1

/etc/passwd является папкой Apache, и эта папка является частной ...
Вы не можете получить доступ к ней на большинстве серверов!
Если пользователь отключен на сервере, он не может получить доступ к запуску php!

+0

Я имею в виду прочесть весь список пользователей из/etc/passwd и судить один за другим. Не проверка текущего пользователя. – harryz

+1

'Вы не можете получить доступ к нему на большинстве серверов !, иначе вы можете прочитать этот файл по php fopen() и прочитать строки и проверить его !! @! –

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