https://github.com/ambitus/pyracf
Python interface to the RACF Command interface.
https://github.com/ambitus/pyracf
mainframe-automation mainframe-simplification pyracf python racf security-automation
Last synced: 5 months ago
JSON representation
Python interface to the RACF Command interface.
- Host: GitHub
- URL: https://github.com/ambitus/pyracf
- Owner: ambitus
- License: apache-2.0
- Created: 2023-08-04T16:08:48.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-10-03T13:59:41.000Z (over 1 year ago)
- Last Synced: 2025-09-29T07:14:22.309Z (9 months ago)
- Topics: mainframe-automation, mainframe-simplification, pyracf, python, racf, security-automation
- Language: Python
- Homepage: https://ambitus.github.io/pyracf/
- Size: 2.27 MB
- Stars: 14
- Watchers: 1
- Forks: 5
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README

[](https://github.com/ambitus/pyracf/actions/workflows/unittest.yml)
[](https://github.com/ambitus/pyracf/actions/workflows/coverage.yml)
[](https://github.com/ambitus/pyracf/actions/workflows/pylint.yml)
[](https://github.com/ambitus/pyracf/actions/workflows/flake8.yml)
[](https://pypi.org/project/pyracf/#history)
[](https://pypi.org/project/pyracf/)
[](https://pypistats.org/packages/pyracf)
> ⚠️ _If this is not what you are looking for, it is likely because you are looking for a different package that used to be distributed under the `pyracf` name. You may instead be looking for the [`mfpandas`](https://pypi.org/project/mfpandas/) package, which was distributed under the `pyracf` name prior to October 2024._
Python interface into the RACF management application programming interface.
```python
>>> from pyracf import UserAdmin
>>> user_admin = UserAdmin()
>>> user_admin.get_omvs_uid("squidwrd")
2424
>>> user_admin.set_omvs_uid("squidwrd", 1919)
>>> user_admin.get_omvs_uid("squidwrd")
1919
```
## Description
As automation becomes more and more prevalent, the need to manage the security environment programmatically increases. On z/OS that means managing a security product like the IBM Resource Access Control Facility (RACF). RACF is the primary facility for managing identity, authority, and access control for z/OS. There are more than 50 callable services with assembler interfaces that are part of the RACF API.
[RACF callable services interfaces](http://publibz.boulder.ibm.com/epubs/pdf/ich2d112.pdf)
While there are a number of languages that can be used to manage RACF, (from low level languages like Assembler to higher level languages like REXX), the need to have it in a language that is used to manage other platforms is paramount. The pyRACF project is focused on making the RACF management tasks available to Python programmers. This will make it easier to manage RACF from management tools like Ansible and Tekton.
## Getting Started
### Dependencies
* z/OS 2.4 and higher.
* R_SecMgtOper (IRRSMO00): Security Management Operations.
* [The appropriate RACF authorizations](https://www.ibm.com/docs/en/zos/2.5.0?topic=operations-racf-authorization)
### Installation
```shell
pip install pyracf
```
> 💡 _You may also optionally [Download & Install pyRACF From GitHub](https://github.com/ambitus/pyracf/releases)._
### Usage
* [pyRACF Documentation](https://ambitus.github.io/pyracf/)
## Help
* [Github Discussions](https://github.com/ambitus/pyracf/discussions)
## Authors
* Joe Bostian: jbostian@ibm.com
* Frank De Gilio: degilio@us.ibm.com
* Leonard Carcaramo: lcarcaramo@ibm.com
* Elijah Swift: Elijah.Swift@ibm.com