turbot / steampipe

Zero-ETL, infinite possibilities. Live query APIs, code & more with SQL. No DB required.
https://steampipe.io
GNU Affero General Public License v3.0
6.84k stars 264 forks source link

running `steampipe mod install` in a mod which has plugin dependendcies results in an invalid mod file #2676

Closed kaidaguerre closed 1 year ago

kaidaguerre commented 1 year ago

also, hcl directives are resolved to their values, before:

mod "aws_compliance" {
  # hub metadata
  title         = "AWS Compliance"
  description   = "Run individual configuration, compliance and security controls or full compliance benchmarks for CIS, FFIEC, PCI, NIST, HIPAA, RBI CSF, GDPR, SOC 2, Audit Manager Control Tower, FedRAMP, GxP and AWS Foundational Security Best Practices controls across all your AWS accounts using Steampipe."
  color         = "#FF9900"
  documentation = file("./docs/index.md")
  icon          = "/images/mods/turbot/aws-compliance.svg"
  categories    = ["aws", "cis", "compliance", "pci dss", "public cloud", "security"]

  opengraph {
    title       = "Steampipe Mod for AWS Compliance"
    description = "Run individual configuration, compliance and security controls or full compliance benchmarks for CIS, FFIEC, PCI, NIST, HIPAA, RBI CSF, GDPR, SOC 2, Audit Manager Control Tower, FedRAMP, GxP and AWS Foundational Security Best Practices controls across all your AWS accounts using Steampipe."
    image       = "/images/mods/turbot/aws-compliance-social-graphic.png"
  }

  require {
    plugin "aws" {
      version = "0.80.0"
    }
  }
}

after

mod "aws_compliance" {
  title         = "AWS Compliance"
  description   = "Run individual configuration, compliance and security controls or full compliance benchmarks for CIS, FFIEC, PCI, NIST, HIPAA, RBI CSF, GDPR, SOC 2, Audit Manager Control Tower, FedRAMP, GxP and AWS Foundational Security Best Practices controls across all your AWS accounts using Steampipe."
  color         = "#FF9900"
  documentation = "---\nrepository: \"https://github.com/turbot/steampipe-mod-aws-compliance\"\n---\n\n# AWS Compliance Mod\n\nRun individual configuration, compliance and security controls or full compliance benchmarks for `Audit Manager Control Tower`, `AWS Foundational Security Best Practices`, `CIS`, `CISA Cyber Essentials`, `FedRAMP`, `FFIEC`, `GDPR`, `GxP 21 CFR Part 11`, `GxP EU Annex 11`, `HIPAA`, `NIST 800-53`, `NIST CSF`, `PCI DSS`, `RBI Cyber Security Framework` and `SOC 2` across all your AWS accounts.\n\n<img src=\"https://raw.githubusercontent.com/turbot/steampipe-mod-aws-compliance/main/docs/aws_compliance_dashboard.png\" width=\"50%\" type=\"thumbnail\"/>\n<img src=\"https://raw.githubusercontent.com/turbot/steampipe-mod-aws-compliance/main/docs/aws_cis_v140_dashboard.png\" width=\"50%\" type=\"thumbnail\"/>\n<img src=\"https://raw.githubusercontent.com/turbot/steampipe-mod-aws-compliance/main/docs/aws_cis_v140_console.png\" width=\"50%\" type=\"thumbnail\"/>\n<img src=\"https://raw.githubusercontent.com/turbot/steampipe-mod-aws-compliance/main/docs/aws_fsbp_dashboard.png\" width=\"50%\" type=\"thumbnail\"/>\n\n## References\n\n[AWS](https://aws.amazon.com/) provides on-demand cloud computing platforms and APIs to authenticated customers on a metered pay-as-you-go basis.\n\n[AWS Foundational Security Best Practices](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-fsbp-controls.html) is a set of controls that detect when your deployed accounts and resources deviate from security best practices.\n\n[CIS AWS Benchmarks](https://www.cisecurity.org/benchmark/amazon_web_services/) provide a predefined set of compliance and security best-practice checks for AWS accounts.\n\n[CISA Cyber Essentials](https://www.cisa.gov/cyber-essentials) provide an actionable understanding of where to start implementing organizational cybersecurity practices.\n\n[Audit Manager Control Tower](https://docs.aws.amazon.com/audit-manager/latest/userguide/controltower.html) provide the easiest way to set up and govern a secure, multi-account AWS environment.\n\n[FedRAMP](https://www.fedramp.gov/baselines/) is a US government-wide program that delivers a standard approach to the security assessment, authorization, and continuous monitoring for cloud products and services.\n\n[FFIEC](https://www.ffiec.gov/cyberassessmenttool.htm) provides a set of security standards for the Federal Financial Institutions Examination Council (FFIEC) Cyber Security Assessment Tool domains.\n\n[GDPR](https://docs.aws.amazon.com/audit-manager/latest/userguide/GDPR.html) provides a set of robust requirements that raise and harmonize standards for data protection, security, and compliance throughout the European Union (EU).\n\n[GxP 21 CFR Part 11](https://www.ecfr.gov/current/title-21/chapter-I/subchapter-A/part-11?toc=1) includes details for the criteria under which electronic records and signatures are considered trustworthy and equivalent to paper records and ensures the integrity of data used to make product-related safety decisions.\n\n[GxP EU Annex 11](https://health.ec.europa.eu/system/files/2016-11/annex11_01-2011_en_0.pdf.) includes a prebuilt collection of controls with descriptions and testing procedures where controls are grouped into control sets according to GxP requirements.\n\n[HIPAA Compliance](https://aws.amazon.com/compliance/hipaa-compliance/) provides a set of general-purpose security standards for the U.S. Health Insurance Portability and Accountability Act (HIPAA).\n\n[NIST 800-53](https://csrc.nist.gov/publications/detail/sp/800-53/rev-5/final) provides minimum baselines of security controls for U.S. federal information systems except those related to national security.\n\n[NIST CSF](https://www.nist.gov/cyberframework) provides security standards for managing and reducing cybersecurity risk.\n\n[NIST 800-171](https://csrc.nist.gov/publications/detail/sp/800-171/rev-2/final) provides minimum baselines of security controls for protecting the confidentiality of Controlled Unclassified Information (CUI) in nonfederal systems and organizations, and recommends specific security requirements to achieve that objective.\n\n[PCI DSS](https://www.pcisecuritystandards.org) provides security standards for the payment card industry.\n\n[RBI Cyber Security Framework](https://www.rbi.org.in/Scripts/NotificationUser.aspx?Id=11397) provides a cyber security framework for Urban Cooperative Banks (UCB) in India.\n\n[SOC 2](https://docs.aws.amazon.com/audit-manager/latest/userguide/SOC2.html) provides an auditing procedure that ensures a company's data is securely managed.\n\n[Steampipe](https://steampipe.io) is an open source CLI to instantly query cloud APIs using SQL.\n\n[Steampipe Mods](https://steampipe.io/docs/reference/mod-resources#mod) are collections of `named queries`, and codified `controls` that can be used to test current configuration of your cloud resources against a desired configuration.\n\n## Documentation\n\n- **[Benchmarks and controls →](https://hub.steampipe.io/mods/turbot/aws_compliance/controls)**\n- **[Named queries →](https://hub.steampipe.io/mods/turbot/aws_compliance/queries)**\n\n## Getting started\n\n### Installation\n\nDownload and install Steampipe (https://steampipe.io/downloads). Or use Brew:\n\n```sh\nbrew tap turbot/tap\nbrew install steampipe\n```\n\nInstall the AWS plugin with [Steampipe](https://steampipe.io):\n\n```sh\nsteampipe plugin install aws\n```\n\nClone:\n\n```sh\ngit clone https://github.com/turbot/steampipe-mod-aws-compliance.git\ncd steampipe-mod-aws-compliance\n```\n\n### Usage\n\nBefore running any benchmarks, it's recommended to generate your AWS credential report:\n\n```sh\naws iam generate-credential-report\n```\n\nStart your dashboard server to get started:\n\n```sh\nsteampipe dashboard\n```\n\nBy default, the dashboard interface will then be launched in a new browser\nwindow at https://localhost:9194. From here, you can run benchmarks by\nselecting one or searching for a specific one.\n\nInstead of running benchmarks in a dashboard, you can also run them within your\nterminal with the `steampipe check` command:\n\nRun all benchmarks:\n\n```sh\nsteampipe check all\n```\n\nRun a single benchmark:\n\n```sh\nsteampipe check benchmark.cis_v150\n```\n\nRun a specific control:\n\n```sh\nsteampipe check control.cis_v150_2_1_1\n```\n\nDifferent output formats are also available, for more information please see\n[Output Formats](https://steampipe.io/docs/reference/cli/check#output-formats).\n\n### Credentials\n\nThis mod uses the credentials configured in the [Steampipe AWS plugin](https://hub.steampipe.io/plugins/turbot/aws).\n\n### Configuration\n\nNo extra configuration is required.\n\n## Contributing\n\nIf you have an idea for additional controls or just want to help maintain and extend this mod ([or others](https://github.com/topics/steampipe-mod)) we would love you to join the community and start contributing.\n\n- **[Join our Slack community →](https://steampipe.io/community/join)** and hang out with other Mod developers.\n\nPlease see the [contribution guidelines](https://github.com/turbot/steampipe/blob/main/CONTRIBUTING.md) and our [code of conduct](https://github.com/turbot/steampipe/blob/main/CODE_OF_CONDUCT.md). All contributions are subject to the [Apache 2.0 open source license](https://github.com/turbot/steampipe-mod-aws-compliance/blob/main/LICENSE).\n\nWant to help but not sure where to start? Pick up one of the `help wanted` issues:\n\n- [Steampipe](https://github.com/turbot/steampipe/labels/help%20wanted)\n- [AWS Compliance Mod](https://github.com/turbot/steampipe-mod-aws-compliance/labels/help%20wanted)\n"
  icon          = "/images/mods/turbot/aws-compliance.svg"
  categories    = ["aws", "cis", "compliance", "pci dss", "public cloud", "security"]
  opengraph {
    title       = "Steampipe Mod for AWS Compliance"
    description = "Run individual configuration, compliance and security controls or full compliance benchmarks for CIS, FFIEC, PCI, NIST, HIPAA, RBI CSF, GDPR, SOC 2, Audit Manager Control Tower, FedRAMP, GxP and AWS Foundational Security Best Practices controls across all your AWS accounts using Steampipe."
    image       = "/images/mods/turbot/aws-compliance-social-graphic.png"
  }
  require {
    plugins = [""]
    mod "github.com/turbot/steampipe-mod-aws-insights" {
      version = "latest"
    }
  }
}
github-actions[bot] commented 1 year ago

'This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 30 days.'

judell commented 1 year ago

@kaidaguerre should this remain open?

github-actions[bot] commented 1 year ago

'This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 30 days.'

stgarf-sx commented 1 year ago

This issue predates #3279 but is essentially a dupe of it and it appears that #3323 is tracking the fixes needed.