<gh_stars>0
{
    "id": 1021048,
    "name": "Protect sensitive data in config files from disclosure",
    "href": "AIP/quality-rules/1021048",
    "critical": true,
    "associatedValueName": "Multiple Values",
    "description": "This rule raises a violation when loading sensitive data using the OpenStack framework without the protection flag. This rule is compliant with CWE-522, OWASP 2013 2017 A2 recommendations.",
    "output": "Line and column for each violation.\nAssociated value => number of violations found",
    "rationale": "Frameworks offer many flags in their APIs to properly handle sensitive data. Using them is particularly important to avoid accidental exposition of loaded passwords through accidental debug logging.",
    "remediation": "Add the \u2018secret=True\u2019 flag to the \u2018cfg.StrOpt()\u2019 function when registering the oslo configuration.",
    "remediationSample": "cfg.StrOpt('<PASSWORD>',\n                 help='pss',\n                 secret=True) # sanitize and protection",
    "sample": "cfg.StrOpt('<PASSWORD>',\n                 help='pss')",
    "total": "Python artifacts",
    "businessCriteria": [
        {
            "id": 66031,
            "name": "Programming Practices",
            "href": "AIP/business-criteria/66031"
        },
        {
            "id": 60016,
            "name": "Security",
            "href": "AIP/business-criteria/60016"
        }
    ],
    "technicalCriteria": [
        {
            "id": 66063,
            "name": "Secure Coding - API Abuse",
            "weight": 9,
            "critical": true
        }
    ],
    "technologies": [
        {
            "id": 1021000,
            "name": "Python",
            "href": "AIP/technologies/1021000"
        }
    ],
    "qualityStandards": [
        
    ]
}
