rda-python-setuid 1.0.6__tar.gz → 1.0.7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {rda_python_setuid-1.0.6/src/rda_python_setuid.egg-info → rda_python_setuid-1.0.7}/PKG-INFO +23 -1
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/README.md +22 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/pyproject.toml +1 -1
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7/src/rda_python_setuid.egg-info}/PKG-INFO +23 -1
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/LICENSE +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/MANIFEST.in +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/setup.cfg +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid/__init__.py +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid/install.py +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid/install.usg +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid/pgstart.py +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid/pywrapper.c +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid/pywrapper.py +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid.egg-info/SOURCES.txt +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid.egg-info/dependency_links.txt +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid.egg-info/entry_points.txt +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid.egg-info/requires.txt +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid.egg-info/top_level.txt +0 -0
- {rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/tests/test_setuid.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rda_python_setuid
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.7
|
|
4
4
|
Summary: RDA Python Package to setuid for program executions as an effective or common user
|
|
5
5
|
Author-email: Zaihua Ji <zji@ucar.edu>
|
|
6
6
|
Project-URL: Homepage, https://github.com/NCAR/rda-python-setuid
|
|
@@ -30,6 +30,28 @@ Two modes are supported:
|
|
|
30
30
|
- **Mode 2 (pgstart specialist):** a copy `pgstart_zji` runs any command as specialist
|
|
31
31
|
`zji` via `pgstart.py`, restricted to authorized users.
|
|
32
32
|
|
|
33
|
+
Two Python entry points are packaged alongside the C wrapper:
|
|
34
|
+
|
|
35
|
+
- **`pywrapper.py`** — the default fallback target executed when `pywrapper.c`
|
|
36
|
+
cannot resolve a matching `setuid_<program>` entry point. Acquires the
|
|
37
|
+
effective UID via `PgLOG.set_suid()`, prints the caller's real and effective
|
|
38
|
+
user names, and shows the `pyproject.toml` snippet plus the
|
|
39
|
+
`pywrapper-install -l <program>` command needed to wrap a new script.
|
|
40
|
+
Diagnostic flags `-env`, `-inc`, and `-plg` dump the environment variables,
|
|
41
|
+
`sys.path`, and `PGLOG` dictionary respectively — handy for verifying the
|
|
42
|
+
setuid environment before wiring up a real program.
|
|
43
|
+
|
|
44
|
+
- **`pgstart.py`** — the Mode 2 launcher invoked through a `pgstart_<USER>`
|
|
45
|
+
copy of `pywrapper`. Reads the real/effective UIDs from `PGLOG`, then
|
|
46
|
+
permits execution only if the real user matches the effective user or the
|
|
47
|
+
shared GDEX common user (`PGLOG['GDEXUSER']`); unauthorized callers receive
|
|
48
|
+
an informational message and exit. After authorization it parses leading
|
|
49
|
+
flag tokens — `-bg` (background via `subprocess.Popen`), `-fg` (explicit
|
|
50
|
+
foreground, default), `-cwd <dir>` (chdir before exec), and the same
|
|
51
|
+
`-env`/`-inc`/`-plg` diagnostics as `pywrapper.py` — and then runs the
|
|
52
|
+
remaining arguments as a command (`subprocess.run`/`Popen`) under the
|
|
53
|
+
effective UID, logging a host/program/timestamp/user line to `pgstart.log`.
|
|
54
|
+
|
|
33
55
|
## Dependency requirement
|
|
34
56
|
|
|
35
57
|
Any Python package whose programs are to be run via the setuid mechanism must declare
|
|
@@ -14,6 +14,28 @@ Two modes are supported:
|
|
|
14
14
|
- **Mode 2 (pgstart specialist):** a copy `pgstart_zji` runs any command as specialist
|
|
15
15
|
`zji` via `pgstart.py`, restricted to authorized users.
|
|
16
16
|
|
|
17
|
+
Two Python entry points are packaged alongside the C wrapper:
|
|
18
|
+
|
|
19
|
+
- **`pywrapper.py`** — the default fallback target executed when `pywrapper.c`
|
|
20
|
+
cannot resolve a matching `setuid_<program>` entry point. Acquires the
|
|
21
|
+
effective UID via `PgLOG.set_suid()`, prints the caller's real and effective
|
|
22
|
+
user names, and shows the `pyproject.toml` snippet plus the
|
|
23
|
+
`pywrapper-install -l <program>` command needed to wrap a new script.
|
|
24
|
+
Diagnostic flags `-env`, `-inc`, and `-plg` dump the environment variables,
|
|
25
|
+
`sys.path`, and `PGLOG` dictionary respectively — handy for verifying the
|
|
26
|
+
setuid environment before wiring up a real program.
|
|
27
|
+
|
|
28
|
+
- **`pgstart.py`** — the Mode 2 launcher invoked through a `pgstart_<USER>`
|
|
29
|
+
copy of `pywrapper`. Reads the real/effective UIDs from `PGLOG`, then
|
|
30
|
+
permits execution only if the real user matches the effective user or the
|
|
31
|
+
shared GDEX common user (`PGLOG['GDEXUSER']`); unauthorized callers receive
|
|
32
|
+
an informational message and exit. After authorization it parses leading
|
|
33
|
+
flag tokens — `-bg` (background via `subprocess.Popen`), `-fg` (explicit
|
|
34
|
+
foreground, default), `-cwd <dir>` (chdir before exec), and the same
|
|
35
|
+
`-env`/`-inc`/`-plg` diagnostics as `pywrapper.py` — and then runs the
|
|
36
|
+
remaining arguments as a command (`subprocess.run`/`Popen`) under the
|
|
37
|
+
effective UID, logging a host/program/timestamp/user line to `pgstart.log`.
|
|
38
|
+
|
|
17
39
|
## Dependency requirement
|
|
18
40
|
|
|
19
41
|
Any Python package whose programs are to be run via the setuid mechanism must declare
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rda_python_setuid
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.7
|
|
4
4
|
Summary: RDA Python Package to setuid for program executions as an effective or common user
|
|
5
5
|
Author-email: Zaihua Ji <zji@ucar.edu>
|
|
6
6
|
Project-URL: Homepage, https://github.com/NCAR/rda-python-setuid
|
|
@@ -30,6 +30,28 @@ Two modes are supported:
|
|
|
30
30
|
- **Mode 2 (pgstart specialist):** a copy `pgstart_zji` runs any command as specialist
|
|
31
31
|
`zji` via `pgstart.py`, restricted to authorized users.
|
|
32
32
|
|
|
33
|
+
Two Python entry points are packaged alongside the C wrapper:
|
|
34
|
+
|
|
35
|
+
- **`pywrapper.py`** — the default fallback target executed when `pywrapper.c`
|
|
36
|
+
cannot resolve a matching `setuid_<program>` entry point. Acquires the
|
|
37
|
+
effective UID via `PgLOG.set_suid()`, prints the caller's real and effective
|
|
38
|
+
user names, and shows the `pyproject.toml` snippet plus the
|
|
39
|
+
`pywrapper-install -l <program>` command needed to wrap a new script.
|
|
40
|
+
Diagnostic flags `-env`, `-inc`, and `-plg` dump the environment variables,
|
|
41
|
+
`sys.path`, and `PGLOG` dictionary respectively — handy for verifying the
|
|
42
|
+
setuid environment before wiring up a real program.
|
|
43
|
+
|
|
44
|
+
- **`pgstart.py`** — the Mode 2 launcher invoked through a `pgstart_<USER>`
|
|
45
|
+
copy of `pywrapper`. Reads the real/effective UIDs from `PGLOG`, then
|
|
46
|
+
permits execution only if the real user matches the effective user or the
|
|
47
|
+
shared GDEX common user (`PGLOG['GDEXUSER']`); unauthorized callers receive
|
|
48
|
+
an informational message and exit. After authorization it parses leading
|
|
49
|
+
flag tokens — `-bg` (background via `subprocess.Popen`), `-fg` (explicit
|
|
50
|
+
foreground, default), `-cwd <dir>` (chdir before exec), and the same
|
|
51
|
+
`-env`/`-inc`/`-plg` diagnostics as `pywrapper.py` — and then runs the
|
|
52
|
+
remaining arguments as a command (`subprocess.run`/`Popen`) under the
|
|
53
|
+
effective UID, logging a host/program/timestamp/user line to `pgstart.log`.
|
|
54
|
+
|
|
33
55
|
## Dependency requirement
|
|
34
56
|
|
|
35
57
|
Any Python package whose programs are to be run via the setuid mechanism must declare
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid.egg-info/entry_points.txt
RENAMED
|
File without changes
|
{rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid.egg-info/requires.txt
RENAMED
|
File without changes
|
{rda_python_setuid-1.0.6 → rda_python_setuid-1.0.7}/src/rda_python_setuid.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|