# 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": "",
"docs_url": null,
"requires_python": ">=3.9,<4.0",
"maintainer_email": "",
"keywords": "",
"author": "Constable",
"author_email": "info@constableapp.com",
"download_url": "https://files.pythonhosted.org/packages/3f/8c/40545e9b9fd05eaa83085d288cd443a195c1e5161fb66e0b4be251856f05/iam_actions-1.2.20231202.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.20231202",
"project_urls": {
"Homepage": "https://github.com/constableapp/iam_actions",
"Repository": "https://github.com/constableapp/iam_actions"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "28c457d6d66049c702f705d46bd3c3651dc08e6600011ecd52cbdf849b615a28",
"md5": "f4fc4ec54b6e5990f8646a9670a288a1",
"sha256": "7ff94eb0d99469e928bacce9f15075c217f5184c488c2c04eaeefd5d097b5c32"
},
"downloads": -1,
"filename": "iam_actions-1.2.20231202-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f4fc4ec54b6e5990f8646a9670a288a1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9,<4.0",
"size": 642779,
"upload_time": "2023-12-02T02:18:01",
"upload_time_iso_8601": "2023-12-02T02:18:01.043697Z",
"url": "https://files.pythonhosted.org/packages/28/c4/57d6d66049c702f705d46bd3c3651dc08e6600011ecd52cbdf849b615a28/iam_actions-1.2.20231202-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3f8c40545e9b9fd05eaa83085d288cd443a195c1e5161fb66e0b4be251856f05",
"md5": "4f414adc8b8fcda6ff535571b5e5dd27",
"sha256": "19a1cb33ee2104af482b8cfa12d27815bef527366efec4f286b83f83dfcff835"
},
"downloads": -1,
"filename": "iam_actions-1.2.20231202.tar.gz",
"has_sig": false,
"md5_digest": "4f414adc8b8fcda6ff535571b5e5dd27",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9,<4.0",
"size": 631187,
"upload_time": "2023-12-02T02:18:05",
"upload_time_iso_8601": "2023-12-02T02:18:05.689806Z",
"url": "https://files.pythonhosted.org/packages/3f/8c/40545e9b9fd05eaa83085d288cd443a195c1e5161fb66e0b4be251856f05/iam_actions-1.2.20231202.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-12-02 02:18:05",
"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"
}