{"id":13602628,"url":"https://github.com/tobilg/aws-iam-data","last_synced_at":"2025-04-07T11:03:57.661Z","repository":{"id":165633319,"uuid":"638525826","full_name":"tobilg/aws-iam-data","owner":"tobilg","description":"This repository contains the full dataset of AWS IAM data (services, actions, resource types and conditions keys). It's updated on a daily basis at 4AM UTC.","archived":false,"fork":false,"pushed_at":"2024-10-30T04:03:57.000Z","size":194736,"stargazers_count":51,"open_issues_count":3,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-10-30T07:14:17.495Z","etag":null,"topics":["aws","data","git-scraping","iam"],"latest_commit_sha":null,"homepage":"https://www.awsiamdata.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tobilg.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-09T14:38:24.000Z","updated_at":"2024-10-30T04:04:01.000Z","dependencies_parsed_at":"2024-02-20T05:23:20.547Z","dependency_job_id":"ad80a8c7-d006-43fc-ae03-0b3572349971","html_url":"https://github.com/tobilg/aws-iam-data","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tobilg%2Faws-iam-data","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tobilg%2Faws-iam-data/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tobilg%2Faws-iam-data/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tobilg%2Faws-iam-data/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tobilg","download_url":"https://codeload.github.com/tobilg/aws-iam-data/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247640460,"owners_count":20971557,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","data","git-scraping","iam"],"created_at":"2024-08-01T18:01:32.147Z","updated_at":"2025-04-07T11:03:57.625Z","avatar_url":"https://github.com/tobilg.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","aws"],"sub_categories":[],"readme":"# aws-iam-data\nThis repository provides AWS IAM data gathered from the official [AWS IAM docs](https://docs.aws.amazon.com/service-authorization/latest/reference/reference_policies_actions-resources-contextkeys.html) as a convenient npm package ([aws-iam-data](https://www.npmjs.com/package/aws-iam-data)), that can be used in other OSS projects.\n\nThe package also includes the [TypeScript interface definitions](src/awsIamData.d.ts).\n\n## Interactively query the dataset\nYou can query the dataset with [sql-workbench.com](https://www.sql-workbench.com/) by clicking on the link below:\n\n[AWS IAM Data on SQL Workbench](https://sql-workbench.com/#queries=v0,ATTACH-'https%3A%2F%2Fraw.githubusercontent.com%2Ftobilg%2Faws%20iam%20data%2Fmain%2Fdata%2Fdb%2Fiam.duckdb'-as-aws_iam-(READ_ONLY)~,SELECT-s.name%2C-count(distinct-a.action_id)%3A%3Aint-AS-action_cnt-FROM-aws_iam.services-s-INNER-JOIN-aws_iam.actions-a-ON-a.service_id-%3D-s.service_id-GROUP-BY-ALL-ORDER-BY-action_cnt-DESC~)\n\n## Library usage\nYou can install [aws-iam-data](https://www.npmjs.com/package/aws-iam-data) as a dependecy to your Node/TypeScript project via \n\n```bash\nnpm i --save aws-iam-data\n```\n\nTo use it in your own projects, see [examples/index.js](examples/index.js) or the code below:\n\n```javascript\nconst { iamData, metadata, changelog } = require('aws-iam-data');\n\n// Get overall service count\nconsole.log(`Contains ${metadata.serviceCount} services!`);\n\n// Get changelog\nconsole.log(JSON.stringify(changelog, null, 2));\n\n// Get EC2 data\nconst ec2IamData = iamData.filter(service =\u003e service.name === 'Amazon EC2')[0];\n\n// Get actions and their access level\nconst ec2Actions = ec2IamData.actions.map(action =\u003e ({ name: action.name, accessLevel: action.accessLevel }));\nconsole.log(JSON.stringify(ec2Actions, null, 2));\n\n// Get EC2 resource types\nconst ec2ResourceTypes = ec2IamData.resourceTypes.map(action =\u003e ({ name: action.name, arnPattern: action.arnPattern }));\nconsole.log(JSON.stringify(ec2ResourceTypes, null, 2));\n```\n\n## Automatic updates\nThe CI pipeline will check for AWS IAM docs updates everyday at 4AM UTC, and automatically publish a new patch version if updates are detected.\n\n\n## Data exports\nThe JSON-based data gets automatically exported as CSV and Parquet files, as well as a DuckDB database. Please look in the respective directories:\n\n* [data/csv/](data/csv/)\n* [data/parquet/](data/parquet/)\n* [data/db/](data/db/)\n## Entity Relationship Diagram\nThe ERD of the exported data tables looks like this:\n![ERD](docs/erd.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftobilg%2Faws-iam-data","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftobilg%2Faws-iam-data","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftobilg%2Faws-iam-data/lists"}