PHP: belirli bir kullanıcı olarak bir dış komut çalıştırmak için nasıl

3 Cevap php

Ben suPHP'lidir düşündüm ama ne gerek değil. Farklı bir kullanıcı olarak tüm PHP komut dosyasını çalıştırmak için benim amaçlar için hizmet etmez. Ben sadece farklı bir kullanıcı olarak tek bir linux komut satırını çalıştırmak gerekir.

Bu mümkün mü?

3 Cevap

Sen shell_exec fonksiyonu ve sudo deneyebilirsiniz

edit: sudo bir şifre sorar gibi görerek, size boru kullanmanızı sağlar kullanımını proc_open, isteyebilirsin ediyorum. this comment özel bir parola boru yaratmak için nasıl bakın.

Ben başka bir yaklaşım denemek gerektiğine inanıyoruz. "Setuid".

http://en.wikipedia.org/wiki/Setuid

Temelde bunun sahibi değil, program olarak çalıştırmak için dosyayı isteyin.

Kullanıcıların CRON komut dosyası çalıştırmak için kullanabilirsiniz. Bu bir web uygulaması ise sınırlı izinlere sahip Apache / Kimse kullanıcıya sınırlıdır. Bu sadece belirli bir süre çalıştırmak gerekiyorsa ben CRON kullanabilirsiniz.

Diğer bir yaklaşım olan Sticky Bits