Ubic::AccessGuard - guard for operations with temporarily different effective uid
use Ubic::AccessGuard; # change effective uid and effective gid to $credentials $guard = Ubic::AccessGuard->new($credentials); # change them back undef $guard;
Ubic::AccessGuard temporarily changes effective uid and gid, and restore it back on destruction.
It's usage is limited, because when effective uid is not equal to real uid, perl automatically turns on tainted mode. Because of this, only tainted-safe code should be called when AccessGuard is active. Ubic doesn't start services under this guard, but uses it when acquiring locks and writing service status files.
This is considered to be a non-public class. Its interface is subject to change without notice.
Construct new access guard object.
User and group will be changed into given
$credentials. It will be changed back on guard's desctruction.
Vyacheslav Matyukhin <email@example.com>
This software is copyright (c) 2013 by Yandex LLC.