CGI、python和setgid

CGI、python和setgid,python,cgi,Python,Cgi,我正在Apache中运行一个已编译的python cgi脚本(使用cxfreeze)。 除其他外,脚本调用 os.setuid(some_uid) os.setgid(some_gid) 显然,一些uid/gid是合法的,我为用户和组设置了粘性位,并验证了它确实设置了。 但是每次打电话我都会出错 os.setgid(int(self.gid)) OSError: [Errno 1] Operation not permitted 正如您可能注意到的,setuid()成功了,setgid没有成

我正在Apache中运行一个已编译的python cgi脚本(使用cxfreeze)。 除其他外,脚本调用

os.setuid(some_uid)
os.setgid(some_gid)
显然,一些uid/gid是合法的,我为用户和组设置了粘性位,并验证了它确实设置了。 但是每次打电话我都会出错

os.setgid(int(self.gid))
OSError: [Errno 1] Operation not permitted
正如您可能注意到的,setuid()成功了,setgid没有成功。这很奇怪,至少对我来说是这样,尽管我承认我对Linux中的权限几乎没有经验。 欢迎有任何想法/想法

我正在使用Apache2.2.15、Python2.6.5、RHEL5.4(内核2.6.18)


谢谢

setuid调用会删除您调用setgid所需的权限,因此您的调用顺序错误。但是为什么不使用专门为删除特权而设计的呢?

当然可以。我真蠢。非常感谢你,我会看看你建议的图书馆