iam-actions


Nameiam-actions JSON
Version 1.2.20240508 PyPI version JSON
download
home_pagehttps://github.com/constableapp/iam_actions
SummaryJSON of AWS policy components
upload_time2024-05-08 02:11:27
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/3c/08/cf06c2e0d5a681085bdb03818a393650419bcb3818302a68ec1ceea1f48a/iam_actions-1.2.20240508.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.20240508",
    "project_urls": {
        "Homepage": "https://github.com/constableapp/iam_actions",
        "Repository": "https://github.com/constableapp/iam_actions"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9a600d4bbfc9a458c77ce1983b24a6ec13475f3496dcc75239b8bb6a26d1e918",
                "md5": "bf1578a246a85043e42f04425d72cf0d",
                "sha256": "16297222087f56b683a054d37ba3eaa6a58addd17322f13e02a9513a9a99c842"
            },
            "downloads": -1,
            "filename": "iam_actions-1.2.20240508-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "bf1578a246a85043e42f04425d72cf0d",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.9",
            "size": 661447,
            "upload_time": "2024-05-08T02:11:23",
            "upload_time_iso_8601": "2024-05-08T02:11:23.234342Z",
            "url": "https://files.pythonhosted.org/packages/9a/60/0d4bbfc9a458c77ce1983b24a6ec13475f3496dcc75239b8bb6a26d1e918/iam_actions-1.2.20240508-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3c08cf06c2e0d5a681085bdb03818a393650419bcb3818302a68ec1ceea1f48a",
                "md5": "67f332bc17a8099aca69c623d8723126",
                "sha256": "211604b6f9e54871a27cd80ab07a9e8b3c2ba06abfe04ae932cef8c8f281c036"
            },
            "downloads": -1,
            "filename": "iam_actions-1.2.20240508.tar.gz",
            "has_sig": false,
            "md5_digest": "67f332bc17a8099aca69c623d8723126",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.9",
            "size": 650426,
            "upload_time": "2024-05-08T02:11:27",
            "upload_time_iso_8601": "2024-05-08T02:11:27.720073Z",
            "url": "https://files.pythonhosted.org/packages/3c/08/cf06c2e0d5a681085bdb03818a393650419bcb3818302a68ec1ceea1f48a/iam_actions-1.2.20240508.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-05-08 02:11:27",
    "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.25538s