* [StepSecurity] Apply security best practices Signed-off-by: StepSecurity Bot <bot@stepsecurity.io> * Update codeql.yml * Update codeql.yml --------- Signed-off-by: StepSecurity Bot <bot@stepsecurity.io> Co-authored-by: penmetsaa <penmetsaa@google.com>pull/3882/head
| @ -0,0 +1,81 @@ | |||||
| version: 2 | |||||
| updates: | |||||
| - package-ecosystem: github-actions | |||||
| directory: / | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /java/carrier | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /java/demo | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /java/geocoder | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /java/internal/prefixmapper | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /java/libphonenumber | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /java | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /metadata | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /migrator/migrator-servlet | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /migrator | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: / | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /tools/java/common | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /tools/java/cpp-build | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /tools/java/data | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /tools/java/java-build | |||||
| schedule: | |||||
| interval: daily | |||||
| - package-ecosystem: maven | |||||
| directory: /tools/java | |||||
| schedule: | |||||
| interval: daily | |||||
| @ -0,0 +1,83 @@ | |||||
| # For most projects, this workflow file will not need changing; you simply need | |||||
| # to commit it to your repository. | |||||
| # | |||||
| # You may wish to alter this file to override the set of languages analyzed, | |||||
| # or to provide custom queries or build logic. | |||||
| # | |||||
| # ******** NOTE ******** | |||||
| # We have attempted to detect the languages in your repository. Please check | |||||
| # the `language` matrix defined below to confirm you have the correct set of | |||||
| # supported CodeQL languages. | |||||
| # | |||||
| name: "CodeQL" | |||||
| on: | |||||
| push: | |||||
| branches: ["master"] | |||||
| pull_request: | |||||
| # The branches below must be a subset of the branches above | |||||
| branches: ["master"] | |||||
| schedule: | |||||
| - cron: "0 0 * * 1" | |||||
| permissions: | |||||
| contents: read | |||||
| jobs: | |||||
| analyze: | |||||
| name: Analyze | |||||
| runs-on: ubuntu-latest | |||||
| permissions: | |||||
| actions: read | |||||
| contents: read | |||||
| security-events: write | |||||
| strategy: | |||||
| fail-fast: false | |||||
| matrix: | |||||
| language: ["java", "javascript"] | |||||
| # CodeQL supports [ $supported-codeql-languages ] | |||||
| # Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support | |||||
| steps: | |||||
| - name: Harden Runner | |||||
| uses: step-security/harden-runner@1f99358870fe1c846a3ccba386cc2b2246836776 # v2.2.1 | |||||
| with: | |||||
| egress-policy: audit # TODO: change to 'egress-policy: block' after couple of runs | |||||
| - name: Checkout repository | |||||
| uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 | |||||
| - name: Install Protoc | |||||
| uses: arduino/setup-protoc@v1 | |||||
| with: | |||||
| version: '3.x' | |||||
| # Initializes the CodeQL tools for scanning. | |||||
| - name: Initialize CodeQL | |||||
| uses: github/codeql-action/init@04df1262e6247151b5ac09cd2c303ac36ad3f62b # v2.2.9 | |||||
| with: | |||||
| languages: ${{ matrix.language }} | |||||
| # If you wish to specify custom queries, you can do so here or in a config file. | |||||
| # By default, queries listed here will override any specified in a config file. | |||||
| # Prefix the list here with "+" to use these queries and those in the config file. | |||||
| # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). | |||||
| # If this step fails, then you should remove it and run the build manually (see below) | |||||
| - name: Autobuild | |||||
| uses: github/codeql-action/autobuild@04df1262e6247151b5ac09cd2c303ac36ad3f62b # v2.2.9 | |||||
| # ℹ️ Command-line programs to run using the OS shell. | |||||
| # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun | |||||
| # If the Autobuild fails above, remove it and uncomment the following three lines. | |||||
| # modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance. | |||||
| # - run: | | |||||
| # echo "Run, Build Application using script" | |||||
| # ./location_of_script_within_repo/buildscript.sh | |||||
| - name: Perform CodeQL Analysis | |||||
| uses: github/codeql-action/analyze@04df1262e6247151b5ac09cd2c303ac36ad3f62b # v2.2.9 | |||||
| with: | |||||
| category: "/language:${{matrix.language}}" | |||||
| @ -0,0 +1,27 @@ | |||||
| # Dependency Review Action | |||||
| # | |||||
| # This Action will scan dependency manifest files that change as part of a Pull Request, | |||||
| # surfacing known-vulnerable versions of the packages declared or updated in the PR. | |||||
| # Once installed, if the workflow run is marked as required, | |||||
| # PRs introducing known-vulnerable packages will be blocked from merging. | |||||
| # | |||||
| # Source repository: https://github.com/actions/dependency-review-action | |||||
| name: 'Dependency Review' | |||||
| on: [pull_request] | |||||
| permissions: | |||||
| contents: read | |||||
| jobs: | |||||
| dependency-review: | |||||
| runs-on: ubuntu-latest | |||||
| steps: | |||||
| - name: Harden Runner | |||||
| uses: step-security/harden-runner@1f99358870fe1c846a3ccba386cc2b2246836776 # v2.2.1 | |||||
| with: | |||||
| egress-policy: audit # TODO: change to 'egress-policy: block' after couple of runs | |||||
| - name: 'Checkout Repository' | |||||
| uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 | |||||
| - name: 'Dependency Review' | |||||
| uses: actions/dependency-review-action@0efb1d1d84fc9633afcdaad14c485cbbc90ef46c # v2.5.1 | |||||
| @ -0,0 +1,76 @@ | |||||
| # This workflow uses actions that are not certified by GitHub. They are provided | |||||
| # by a third-party and are governed by separate terms of service, privacy | |||||
| # policy, and support documentation. | |||||
| name: Scorecard supply-chain security | |||||
| on: | |||||
| # For Branch-Protection check. Only the default branch is supported. See | |||||
| # https://github.com/ossf/scorecard/blob/main/docs/checks.md#branch-protection | |||||
| branch_protection_rule: | |||||
| # To guarantee Maintained check is occasionally updated. See | |||||
| # https://github.com/ossf/scorecard/blob/main/docs/checks.md#maintained | |||||
| schedule: | |||||
| - cron: '20 7 * * 2' | |||||
| push: | |||||
| branches: ["master"] | |||||
| # Declare default permissions as read only. | |||||
| permissions: read-all | |||||
| jobs: | |||||
| analysis: | |||||
| name: Scorecard analysis | |||||
| runs-on: ubuntu-latest | |||||
| permissions: | |||||
| # Needed to upload the results to code-scanning dashboard. | |||||
| security-events: write | |||||
| # Needed to publish results and get a badge (see publish_results below). | |||||
| id-token: write | |||||
| contents: read | |||||
| actions: read | |||||
| steps: | |||||
| - name: Harden Runner | |||||
| uses: step-security/harden-runner@1f99358870fe1c846a3ccba386cc2b2246836776 # v2.2.1 | |||||
| with: | |||||
| egress-policy: audit # TODO: change to 'egress-policy: block' after couple of runs | |||||
| - name: "Checkout code" | |||||
| uses: actions/checkout@8f4b7f84864484a7bf31766abe9204da3cbe65b3 # v3.5.0 | |||||
| with: | |||||
| persist-credentials: false | |||||
| - name: "Run analysis" | |||||
| uses: ossf/scorecard-action@99c53751e09b9529366343771cc321ec74e9bd3d # v2.0.6 | |||||
| with: | |||||
| results_file: results.sarif | |||||
| results_format: sarif | |||||
| # (Optional) "write" PAT token. Uncomment the `repo_token` line below if: | |||||
| # - you want to enable the Branch-Protection check on a *public* repository, or | |||||
| # - you are installing Scorecards on a *private* repository | |||||
| # To create the PAT, follow the steps in https://github.com/ossf/scorecard-action#authentication-with-pat. | |||||
| # repo_token: ${{ secrets.SCORECARD_TOKEN }} | |||||
| # Public repositories: | |||||
| # - Publish results to OpenSSF REST API for easy access by consumers | |||||
| # - Allows the repository to include the Scorecard badge. | |||||
| # - See https://github.com/ossf/scorecard-action#publishing-results. | |||||
| # For private repositories: | |||||
| # - `publish_results` will always be set to `false`, regardless | |||||
| # of the value entered here. | |||||
| publish_results: true | |||||
| # Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF | |||||
| # format to the repository Actions tab. | |||||
| - name: "Upload artifact" | |||||
| uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2 | |||||
| with: | |||||
| name: SARIF file | |||||
| path: results.sarif | |||||
| retention-days: 5 | |||||
| # Upload the results to GitHub's code scanning dashboard. | |||||
| - name: "Upload to code-scanning" | |||||
| uses: github/codeql-action/upload-sarif@04df1262e6247151b5ac09cd2c303ac36ad3f62b # v2.2.9 | |||||
| with: | |||||
| sarif_file: results.sarif | |||||