是否有 Python/Django 等同于 Rails bundler-audit?

Is there a Python/Django equivalent to Rails bundler-audit?

我是 Django 的新手,如果这很明显,请提前致歉。

在 Rails 项目中,我使用名为 bundler-audit 的 gem 来检查我正在安装的 gem 的补丁级别是否不包括安全性漏洞。通常,我将 运行 bundler-audit 合并到我的 CI 管道中,这样我每次部署时,如果 gem 存在安全漏洞,我都会收到警告(并失败)。

Python 包中是否有类似的漏洞检查系统?

写完这个问题后,我又搜索了一下,找到了Safety,这正是我要找的。

万一其他人正在为 Django 项目设置 CircleCI 并想检查他们的包是否存在漏洞,这里是我在 .circleci/config.yml:

中使用的配置
version: 2
jobs:
    build:
        # build and run tests

    safety_check:
        docker:
            - image: circleci/python:3.6.1
        steps:
            - checkout
            - run:
                command: |
                    python3 -m venv env3
                    . env3/bin/activate
                    pip install safety
                    # specify requirements.txt
                    safety check -r requirements.txt
     merge_master:
         # merge passing code into master

workflows:
    version: 2
    test_and_merge:
        jobs:
            - build:
                filters:
                    branches:
                        ignore: master
            - safety_check:
                filters:
                    branches:
                        ignore: master
            - merge_master:
                filters:
                    branches:
                        only: develop
                requires:
                    - build
                    # code is only merged if safety check passes
                    - safety_check

要检查这是否有效,运行 pip install insecure-package && pip freeze > requirements.txt 然后按下并观察 Circle 是否失败。