IAMdata provides comprehensive AWS IAM data for actions, resources, and conditions, based on official IAM policy documents. It ensures data freshness by checking for updates daily. This library is useful for security tools, policy analysis, and compliance checks, providing a programmatic way to access detailed IAM information.
pip install iamdataVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates how to initialize the `IAMData` client and retrieve information about AWS IAM actions and resource types. The library handles automatic data updates upon initialization.
Pin the exact library version in your `requirements.txt` or `pyproject.toml` (e.g., `iamdata==0.1.202604161`).
Design your applications to be resilient to potential changes in IAM data content. Avoid hardcoding assumptions about data structures beyond what is documented in AWS IAM policy references.
Ensure the environment where `IAMData()` is initialized has outbound internet access to download data from GitHub. For air-gapped environments, consider pre-populating the data cache.
Always check if the result of a lookup method is `None` before attempting to access its attributes or dictionary items. For example: `data = iam_data.get_action('s3', 'NonExistentAction'); if data: print(data['description'])`.Verify your internet connection and ensure that no firewalls or proxy settings are preventing Python from making outbound HTTP/HTTPS requests to `github.com`.
Use the `.get()` method with a default value for dictionary-like access (e.g., `item.get('description', 'N/A')`) to prevent `KeyError`. Consult AWS IAM documentation or the `iamdata` object structure for available fields.No dependency data recorded yet.