iam-actions


Nameiam-actions JSON
Version 1.2.20241024 PyPI version JSON
download
home_pagehttps://github.com/constableapp/iam_actions
SummaryJSON of AWS policy components
upload_time2024-10-24 02:45:14
maintainerNone
docs_urlNone
authorConstable
requires_python<4.0,>=3.9
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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/10/1c/dc105dd73295fc05c4ae42fdc8eb70792056e237cef47c636ac20558f48f/iam_actions-1.2.20241024.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.20241024",
    "project_urls": {
        "Homepage": "https://github.com/constableapp/iam_actions",
        "Repository": "https://github.com/constableapp/iam_actions"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "fdc157c2102b2c8eaf60be8453bd5e4c0472f3a1618396824e8de9a54c79001b",
                "md5": "a6e011f9a12d1180274c42d40875bcbc",
                "sha256": "d60a2d5dc0a4bb1b8a88552393a42f91681564892eb3764369c146a74b5dbb28"
            },
            "downloads": -1,
            "filename": "iam_actions-1.2.20241024-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "a6e011f9a12d1180274c42d40875bcbc",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.9",
            "size": 680548,
            "upload_time": "2024-10-24T02:45:12",
            "upload_time_iso_8601": "2024-10-24T02:45:12.583764Z",
            "url": "https://files.pythonhosted.org/packages/fd/c1/57c2102b2c8eaf60be8453bd5e4c0472f3a1618396824e8de9a54c79001b/iam_actions-1.2.20241024-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "101cdc105dd73295fc05c4ae42fdc8eb70792056e237cef47c636ac20558f48f",
                "md5": "18a83ab707afa1b2eab2698e4e9aa125",
                "sha256": "b42faf6ab96731a2b68a524f81787751ca03d96585b9f190d238259ff9891d91"
            },
            "downloads": -1,
            "filename": "iam_actions-1.2.20241024.tar.gz",
            "has_sig": false,
            "md5_digest": "18a83ab707afa1b2eab2698e4e9aa125",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.9",
            "size": 668690,
            "upload_time": "2024-10-24T02:45:14",
            "upload_time_iso_8601": "2024-10-24T02:45:14.755941Z",
            "url": "https://files.pythonhosted.org/packages/10/1c/dc105dd73295fc05c4ae42fdc8eb70792056e237cef47c636ac20558f48f/iam_actions-1.2.20241024.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-24 02:45:14",
    "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"
}
        
Elapsed time: 0.78872s