CGI,python和setgid

时间:2011-02-27 15:18:34

标签: python cgi

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

os.setuid(some_uid)
os.setgid(some_gid)

显然some_uid / gid是合法的,我为用户和组设置了粘滞位,并验证它确实已设置。 但是在每次通话时我都会收到错误

os.setgid(int(self.gid))
OSError: [Errno 1] Operation not permitted

正如您所注意到的,setuid()成功,setgid不成功。这是非常奇怪的,至少对我来说,虽然我承认我对Linux的权限经验不足。 欢迎任何想法/想法。

我正在使用apache 2.2.15,python 2.6.5,RHEL 5.4(内核2.6.18)

谢谢

1 个答案:

答案 0 :(得分:2)

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