Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

RACFu Logo

test fuzz cppcheck clang-format ruff Version Python Versions Downloads

A standardized JSON interface for RACF that enables seemless exploitation by programming languages that have a foreign language interface for C/C++ and native JSON support.

Description

As automation becomes more and more prevalent, the need to manage the security environment programmaticaly 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. The complete set of interfaces can be found here.

While there are a number of languages that can be used to manage RACF, (from low level lnaguages like Assembler to higher level languages like REXX), the need to be able to easily exploit RACF management functions using existing indurstry standard programming languages and even programming languages that don't exist yet is paramount. The RACFu project is focused on making RACF management functions available to all programming languages that have native JSON support and a foreign language interface for C/C++. This will make it easier to pivot to new tools and programming languages as technology, skills, and business needs continue to evolve in the forseeable future.

RACFu uses JSON for Modern C++ for working with JSON and JSON schema validator for JSON for Modern C++ for Draft-7 JSON Schema Validation.

RACFu's certificate management cababilities leverage the zopen community distributions of OpenSSL and ZOSLIB to create checksum digests and encode certificates.

Getting Started

Minimum z/OS & Language Versions

All versions of z/OS and the IBM Open Enterprise SDK for Python that are fully supported by IBM are supported by RACFu.

Dependencies

  • R_SecMgtOper (IRRSMO00): Security Management Operations.
    • More details about the authorizations required for IRRSMO00 can be found here.
  • R_Admin (IRRSEQ00): RACF Administration API.
    • More details about the authorizations required for IRRSEQ00 can be found here.
  • RACF Subsystem Address Space: This is a dependency for both IRRSMO00 and IRRSEQ00.
    • More information can be found here.
  • z/OS Language Environment Runtime Support: RACFu is compiled using the IBM Open XL C/C++ 2.1 compiler, which is still fairly new and requires z/OS Language Environment service updates for runtime support.

Installation

:bulb: Note: You can also Download & Install RACFu from GitHub

python3 -m pip install racfu

Help

Authors

Maintainers

Release files for racfu 1.0a2.dev2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for racfu 1.0a2.dev2
File Size Uploaded
racfu-1.0a2.dev2.tar.gz 311.2 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for racfu 1.0a2.dev2
File Interpreter ABI Platform
racfu-1.0a2.dev2-cp313-none-any.whl CPython 3.13 none any Details
racfu-1.0a2.dev2-cp312-none-any.whl CPython 3.12 none any Details

Total release size: 10.6 MB

Release files / racfu-1.0a2.dev2.tar.gz

Download URL racfu-1.0a2.dev2.tar.gz
Size 311.2 kB
Tags Source
SHA-256 checksum
How to use checksums
2762c76ed289ef8306e72cd022324536fba776949ba0f7797d78767cfaf8c230
BLAKE2b-256 checksum
How to use checksums
31806c1a8aefb0728a26b20c3f77cb3108654472f488c4e1ac5f78356f5b0b3f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.3

Release files / racfu-1.0a2.dev2-cp313-none-any.whl

Download URL racfu-1.0a2.dev2-cp313-none-any.whl
Size 5.1 MB
Tags CPython 3.13
SHA-256 checksum
How to use checksums
d9043f8a2232b6aeb0f1151f2caca65e5501f4d415021f94838a371cc7cf2d47
BLAKE2b-256 checksum
How to use checksums
8b64619e17116ce83aabe4e279fe413d548ae593bfac191e51777cf1ec2f58d0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.3

Release files / racfu-1.0a2.dev2-cp312-none-any.whl

Download URL racfu-1.0a2.dev2-cp312-none-any.whl
Size 5.1 MB
Tags CPython 3.12
SHA-256 checksum
How to use checksums
0893f6e3145142440d832c2218b45149ae5c14f849e2eccf363661645cfae193
BLAKE2b-256 checksum
How to use checksums
f6936610deda11e800ad98b875fe5678e9f9e40ae2b071fc1aa62350887b5674
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.3
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page