# iam_actions
`iam_actions` is a python module which contains a dictionary of AWS IAM information. Ideally, it is a complete catalog of all AWS services, actions, and resource types. The information is scraped from the AWS documentation pages.
Nightly, the scraping service runs, and publishes a new version with the date appended.
The package is meant to be used as a consumable package, but it also contains the code to generate the definitions for packaging.
There are three "roots" that you can consume: actions, resource_types, and services. They all currently return as dict's. *However, in a future release, it will be returned as python data structures*
## Actions
Actions is a listing of all the actions for a given service. The structure is as follows:
```
{
"service_name": {
"action_name: {
"access_level": access_level,
"action": action_name,
"condition_keys": [condition_key1, ...],
"description": description
}
}
}
```
Therefore, you can find information about an action as follows
```
>>> iam_actions.actions['s3']['GetObject']
{'access_level': 'Read', 'action': 'GetObject', 'condition_keys': ['s3:AccessPointNetworkOrigin', 's3:DataAccessPointAccount', 's3:DataAccessPointArn', 's3:ExistingObjectTag/<key>', 's3:ResourceAccount', 's3:TlsVersion', 's3:authType', 's3:signatureAge', 's3:signatureversion', 's3:x-amz-content-sha256'], 'description': 'Grants permission to retrieve objects from Amazon S3', 'orphan': False, 'resources': ['object']}
```
## Services
Services list information about the service. The structure is as follows:
```
{
"service_name": {
"Actions": [action1, ...]
"ServiceNames": [service_name1, ...]
"ARNFormats": [arn_format1, ...]
"ConditionKeys": [condition_key1, ...]
"HasResource": bool
}
}
```
## Resource Types
Resource Types list information about the resource types for the service. The structure is as follows:
```
{
"service_name": {
"resource_name": {
"arn_pattern": arn_pattern,
"condition_keys": [condition_key1, ...]
}
}
}
```
## Usage
```python
import iam_actions
print(item_actions.services)
print(item_actions.actions)
print(item_actions.resource_types)
```
Raw data
{
"_id": null,
"home_page": "https://github.com/constableapp/iam_actions",
"name": "iam-actions",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.9",
"maintainer_email": null,
"keywords": null,
"author": "Constable",
"author_email": "info@constableapp.com",
"download_url": "https://files.pythonhosted.org/packages/7f/cb/6a340737c80f8b8b9b17a40a4e9ee40a8edf56051983d2a60d16006a95c9/iam_actions-1.2.20241226.tar.gz",
"platform": null,
"description": "# iam_actions\n\n`iam_actions` is a python module which contains a dictionary of AWS IAM information. Ideally, it is a complete catalog of all AWS services, actions, and resource types. The information is scraped from the AWS documentation pages.\n\nNightly, the scraping service runs, and publishes a new version with the date appended. \n\nThe package is meant to be used as a consumable package, but it also contains the code to generate the definitions for packaging.\n\nThere are three \"roots\" that you can consume: actions, resource_types, and services. They all currently return as dict's. *However, in a future release, it will be returned as python data structures*\n\n## Actions\n\nActions is a listing of all the actions for a given service. The structure is as follows:\n```\n{\n \"service_name\": {\n \"action_name: {\n \"access_level\": access_level,\n \"action\": action_name,\n \"condition_keys\": [condition_key1, ...],\n \"description\": description\n }\n }\n}\n```\n\nTherefore, you can find information about an action as follows\n\n```\n>>> iam_actions.actions['s3']['GetObject']\n{'access_level': 'Read', 'action': 'GetObject', 'condition_keys': ['s3:AccessPointNetworkOrigin', 's3:DataAccessPointAccount', 's3:DataAccessPointArn', 's3:ExistingObjectTag/<key>', 's3:ResourceAccount', 's3:TlsVersion', 's3:authType', 's3:signatureAge', 's3:signatureversion', 's3:x-amz-content-sha256'], 'description': 'Grants permission to retrieve objects from Amazon S3', 'orphan': False, 'resources': ['object']}\n```\n\n## Services\n\nServices list information about the service. The structure is as follows:\n\n```\n{\n \"service_name\": {\n \"Actions\": [action1, ...]\n \"ServiceNames\": [service_name1, ...]\n \"ARNFormats\": [arn_format1, ...]\n \"ConditionKeys\": [condition_key1, ...]\n \"HasResource\": bool\n }\n}\n```\n\n## Resource Types\n\nResource Types list information about the resource types for the service. The structure is as follows:\n\n```\n{\n \"service_name\": {\n \"resource_name\": {\n \"arn_pattern\": arn_pattern,\n \"condition_keys\": [condition_key1, ...]\n }\n }\n}\n```\n\n## Usage\n\n```python\nimport iam_actions\n\nprint(item_actions.services)\nprint(item_actions.actions)\nprint(item_actions.resource_types)\n```\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "JSON of AWS policy components",
"version": "1.2.20241226",
"project_urls": {
"Homepage": "https://github.com/constableapp/iam_actions",
"Repository": "https://github.com/constableapp/iam_actions"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "41a9e7ff49c57b896b19f5ed8ae647a4b8ee8bb0dd74438a5921b6939e184661",
"md5": "1a0b65a4ae298878bf784635d283b895",
"sha256": "557b89dac8ba7ca3b1ba38ecc3891b565a866205a1feae9ebc225b6c66c04e75"
},
"downloads": -1,
"filename": "iam_actions-1.2.20241226-py3-none-any.whl",
"has_sig": false,
"md5_digest": "1a0b65a4ae298878bf784635d283b895",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.9",
"size": 708863,
"upload_time": "2024-12-26T02:43:16",
"upload_time_iso_8601": "2024-12-26T02:43:16.751991Z",
"url": "https://files.pythonhosted.org/packages/41/a9/e7ff49c57b896b19f5ed8ae647a4b8ee8bb0dd74438a5921b6939e184661/iam_actions-1.2.20241226-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7fcb6a340737c80f8b8b9b17a40a4e9ee40a8edf56051983d2a60d16006a95c9",
"md5": "4d3be542621c86adea1afa39a7206a98",
"sha256": "79be964f52a3488e7f83b39e90e3a37adf0314209c1b353e752579677d3d796b"
},
"downloads": -1,
"filename": "iam_actions-1.2.20241226.tar.gz",
"has_sig": false,
"md5_digest": "4d3be542621c86adea1afa39a7206a98",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.9",
"size": 697055,
"upload_time": "2024-12-26T02:43:20",
"upload_time_iso_8601": "2024-12-26T02:43:20.011712Z",
"url": "https://files.pythonhosted.org/packages/7f/cb/6a340737c80f8b8b9b17a40a4e9ee40a8edf56051983d2a60d16006a95c9/iam_actions-1.2.20241226.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-26 02:43:20",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "constableapp",
"github_project": "iam_actions",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "iam-actions"
}