本文整理汇总了Python中os.getresuid方法的典型用法代码示例。如果您正苦于以下问题:Python os.getresuid方法的具体用法?Python os.getresuid怎么用?Python os.getresuid使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类os
的用法示例。
在下文中一共展示了os.getresuid方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _accetable_user_map
# 需要导入模块: import os [as 别名]
# 或者: from os import getresuid [as 别名]
def _accetable_user_map(user_map):
if not user_map:
return False
ruid, euid, suid = getresuid()
inter_id, outer_id, _range = _covert_map_to_tuple(user_map, 'user')
if i_am_not_superuser():
_id = outer_id
_max_id = outer_id + _range
if _range > 3:
return False
while _id < _max_id:
if _id not in [ruid, euid, suid]:
return False
_id += 1
return True
示例2: get_current_users_and_groups
# 需要导入模块: import os [as 别名]
# 或者: from os import getresuid [as 别名]
def get_current_users_and_groups(displayer=None):
ruid, euid, suid = getresuid()
rgid, egid, sgid = getresgid()
supplementary_groups = os.getgroups()
_supplementary_groups = []
for _id in supplementary_groups:
_name = get_name_by_gid(_id)
_supplementary_groups.append({'name': _name, 'id': _id})
return {
'users': {
'real user': {'name': get_name_by_uid(ruid), 'id': ruid},
'effective user': {'name': get_name_by_uid(euid), 'id': euid},
'saved user': {'name': get_name_by_uid(suid), 'id': suid},},
'groups': {
'real group': {'name': get_name_by_gid(rgid), 'id': rgid},
'effective group': {'name': get_name_by_gid(rgid), 'id': rgid},
'saved group': {'name': get_name_by_gid(rgid), 'id': rgid},},
'supplementary_groups': _supplementary_groups,
}
示例3: test_uids
# 需要导入模块: import os [as 别名]
# 或者: from os import getresuid [as 别名]
def test_uids(self):
p = psutil.Process()
real, effective, saved = p.uids()
# os.getuid() refers to "real" uid
self.assertEqual(real, os.getuid())
# os.geteuid() refers to "effective" uid
self.assertEqual(effective, os.geteuid())
# No such thing as os.getsuid() ("saved" uid), but starting
# from python 2.7 we have os.getresuid() which returns all
# of them.
if hasattr(os, "getresuid"):
self.assertEqual(os.getresuid(), p.uids())
示例4: test_gids
# 需要导入模块: import os [as 别名]
# 或者: from os import getresuid [as 别名]
def test_gids(self):
p = psutil.Process()
real, effective, saved = p.gids()
# os.getuid() refers to "real" uid
self.assertEqual(real, os.getgid())
# os.geteuid() refers to "effective" uid
self.assertEqual(effective, os.getegid())
# No such thing as os.getsgid() ("saved" gid), but starting
# from python 2.7 we have os.getresgid() which returns all
# of them.
if hasattr(os, "getresuid"):
self.assertEqual(os.getresgid(), p.gids())
示例5: _make_passphrase
# 需要导入模块: import os [as 别名]
# 或者: from os import getresuid [as 别名]
def _make_passphrase(length=None, save=False, file=None):
"""Create a passphrase and write it to a file that only the user can read.
This is not very secure, and should not be relied upon for actual key
passphrases.
:param int length: The length in bytes of the string to generate.
:param file file: The file to save the generated passphrase in. If not
given, defaults to 'passphrase-<the real user id>-<seconds since
epoch>' in the top-level directory.
"""
if not length:
length = 40
passphrase = _make_random_string(length)
if save:
ruid, euid, suid = os.getresuid()
gid = os.getgid()
now = mktime(localtime())
if not file:
filename = str('passphrase-%s-%s' % uid, now)
file = os.path.join(_repo, filename)
with open(file, 'a') as fh:
fh.write(passphrase)
fh.flush()
fh.close()
os.chmod(file, stat.S_IRUSR | stat.S_IWUSR)
os.chown(file, ruid, gid)
log.warn("Generated passphrase saved to %s" % file)
return passphrase
示例6: getresuid
# 需要导入模块: import os [as 别名]
# 或者: from os import getresuid [as 别名]
def getresuid(self):
try:
os.getresuid
except AttributeError:
pass
else:
return os.getresuid()
ruid = c_int()
euid = c_int()
suid = c_int()
self._c_func_getresuid(ruid, euid, suid)
return (ruid.value, euid.value, suid.value)
示例7: show_user_group_process_info
# 需要导入模块: import os [as 别名]
# 或者: from os import getresuid [as 别名]
def show_user_group_process_info():
'''TBW'''
# XXX environment variable stuff is Unix-centric
# XXX UID/GID/EGID is Unix-centric.
try:
pid = os.getpid()
uid = os.getuid()
gid = os.getgid()
pgrp = os.getpgrp()
ppid = os.getppid()
# egid = os.getegid()
# euid = os.geteuid()
(ruid, euid, suid) = os.getresuid()
(rgid, egid, sgid) = os.getresgid()
except:
error('Unable to get user/process/group info.')
sys.exc_info()
return
if ((uid == 0) and (euid == 0)): # XXX or?
info('User is ROOT.')
else:
info('User is NOT root.')
log('UID=' + str(uid) +
', GID=' + str(gid) +
', EUID=' + str(euid) +
', EGID=' + str(egid) +
', RUID=' + str(ruid) +
', RGID=' + str(rgid) +
', SUID=' + str(suid) +
', SGID=' + str(sgid) +
', PID=' + str(pid) +
', PPID=' + str(ppid) +
', PGRP=' + str(pgrp))
# XXX which to use, os.environ['s'] or getenv('s')?
try:
user = os.environ['USER']
home = os.environ['HOME']
logname = os.environ['LOGNAME']
log('HOME = ' + home)
log('USER = ' + user)
log('LOGNAME = ' + logname)
except:
error('Unable to get env info.')
sys.exc_info()
return
try:
cwd = os.getcwd()
log('cwd = ' + cwd)
getuid_name = pwd.getpwuid(os.getuid())[0]
log('uid0 name = ' + getuid_name)
getlogin_name = os.getlogin()
log('login name = ' + getlogin_name)
except:
error('Unable to get system info.')
sys.exc_info()