IBM Cloud Docs
准备部署 DevSecOps Apps Stack 解决方案

准备部署 DevSecOps Apps Stack 解决方案

这种可部署架构旨在通过 IBM Cloud® 项目展示 Node 示例应用程序的全自动部署,为您在 IBM Cloud® 上部署自己的应用程序提供灵活、可定制的基础。 该架构默认部署一个示例应用程序,也可进行定制,以引入自己的应用程序。

利用这种架构,您可以确保部署的安全性,并对其进行定制,以满足您独特的业务需求和企业目标。

部署架构时,您可以

  • 实现安全:架构通过部署 IBM Key Protect 和 IBM Secrets Manager 来确保安全。

  • 实现合规性:通过实施一套 DevSecOps 持续集成 (CI)、持续部署 (CD) 和持续合规 (CC) 工具链,以及用于安全应用生命周期管理的 IBM Security and Compliance Center,确保合规性。

部署前

在部署 DevSecOps Solution for Apps Stack 之前,必须具备以下先决条件。

  • 即用即付或订阅 IBM Cloud® 账户。

    没有? 创建一个。 您有试用版或精简版账户吗? 升级您的账户

  • 部署和管理账户资源所需的访问权限级别。

  • 目标账户中具有足够权限的 IBM Cloud API 密钥。 请务必保存 API 密钥值,以便以后配置。

    • 评估环境:如果您的环境用于评估,请在 IAM Identity Service****所有启用身份和访问的服务Activity Tracker Event Routing所有账户管理服务。
    • 生产环境:如果您的环境用于生产资源,请将访问权限限制为可部署架构目录条目的详细信息页面中“权限”选项卡所示的最低权限级别。

    有关详细信息,请参阅 使用 Secrets Manager 中的 API 密钥授权项目部署架构

  • 可选:运行 ibmcloud plugin install project 命令安装 IBM Cloud® CLI 项目插件。 有关详细信息,请参阅 Project CLI 参考资料

  • 可选:熟悉 自定义选项

您可能会在 IBM Cloud® 项目中看到新版本配置的通知。 您可以忽略这些信息,因为它们不会阻止您部署堆栈。 您无需采取任何具体行动。 这些通知是意料之中的,因为我们正在快速迭代底层组件的开发。 当新的堆栈版本出现时,底层组件的版本也会随之更新。

必需的输入变量

名称 描述 Type 缺省值
region 除 SCC 和 Event Notifications 外,所有资源都部署在该区域。 这些资源应单独设置,默认设置为 us-south。 string us-south
en-region 提供事件通知实例的区域。 string us-south
scc-region 配置 Security and Compliance Center 实例的区域。 string us-south
app_repo_existing_url 通过提供 URL.NET Framework 2.0,您可以使用自己现有的应用程序资源库。 这将为您的应用程序库创建一个集成,而不是克隆默认示例。 存在于不同组织中的存储库需要使用 Git 令牌。 参见可选变量中的 app_repo_git_token_secret_name。 string ``

可选输入变量

名称 描述 Type 缺省值
prefix 在此变量中设置的值将作为创建的各种资源的前缀。 前缀和资源名称之间会自动插入一个连字符-作为分隔符。 string devsecops
resource_group_name 创建所有资源的资源组名称。 string devsecops
bucket_name 作为 DevSecOps 工具链的证据存储而创建的 Cloud Object Storage 桶的名称。 string devsecops
create_icr_namespace 设为 true 可让 Terraform 创建注册表命名空间。 设置为 false 时,如果命名空间还不存在,CI 管道将创建该命名空间。 注意:如果使用 Terraform 销毁,ICR 命名空间和所有图像都将被移除。 boolean true
registry_namespace 存储图像的注册表命名空间的名称。 string devsecops
create_cd_instance 设为 true 可创建 Continuous Delivery 服务。 这是运行 DevSecOps 工具链管道和成功与 DevOps Insights 集成交互所必需的。 boolean true
pipeline_ibmcloud_api_key_secret_name Secrets Manager 中 IBM Cloud api 密钥的名称,用于运行管道。 string ibmcloud-api-key
ci_signing_key_secret_name 签名密钥的名称(以 Secrets Manager 为单位),用于签名图像。 string signing-key
cd_code_signing_cert_secret_name Secrets Manager 中签名证书的名称,用于验证签名图像的完整性。 string signing-certificate
cos_api_key_secret_name Secrets Manager 中用于读取/写入证据桶的 Cloud Object Storage api 密钥名称。 string cos-api-key
sm_secret_group Secrets Manager 中创建的秘密组,其中包含 DevSecOps 工具链所需的秘密。 string devsecops
sm_service_plan Secrets Manager 的定价计划。 有试用版和标准版可供选择。 string standard
scc_service_plan Security and Compliance Center 的定价计划。 有试用版和标准版可供选择。 string standard
use_existing_resource_group 设置为 true 将把 resource_group_name 视为现有资源组。 设置 false 将根据 resource_group_name 中的值配置新的资源组。 string devsecops
app_repo_branch 这是默认示例应用程序使用的版本库分支。 或者,如果提供了 app_repo_existing_url,则分支必须反映该版本库的默认分支。 这些分支通常是主分支或主分支。 string main
app_repo_git_token_secret_name 用于访问示例(或自带)应用程序存储库的 Git 令牌密文的密文提供者名称 string ``
project_names 要添加 IBM Cloud Code Engine 的项目名称。 array ["CI_Project","CD_Project"]
existing_secrets_manager_crn 现有 Secrets Manager 实例的 CRN string ``
autostart 设为 true 可自动运行 CI 管道。boolean false
create_git_token 设置为 true 时,将使用 repo_git_token_secret_name 中设置的名称和 repo_git_token_secret_value 中设置的值,在指定的 Secrets Manager 中创建 Git Token secret。 boolean false
repo_apply_settings_to_compliance_repos 设置为 true 可将相同设置应用于所有默认合规性存储库。 设置为 false 可将这些设置仅应用于示例应用程序、管道配置和部署存储库。 boolean false
repo_git_token_secret_name Secrets Manager 中 Git 令牌秘密的名称。 string ``
repo_git_token_secret_value Git 令牌密文的值,如果 create_git_token 设置为 true,则会创建该密文。 string ``
repo_group 配置 Security and Compliance Center 实例的区域。 string us-south
repo_git_provider 通过提供 URL.NET Framework 2.0,您可以使用自己现有的应用程序资源库。 这将为您的应用程序库创建一个集成,而不是克隆默认示例。 存在于不同组织中的存储库需要使用 Git 令牌。 参见可选变量中的 app_repo_git_token_secret_name。 string us-south
repo_title 除 SCC 和 Event Notifications 外,所有资源都部署在该区域。 这些资源应单独设置,默认设置为 us-south。 string us-south
repo_root_url 提供事件通知实例的区域。 string us-south
repo_blind_connection 配置 Security and Compliance Center 实例的区域。 string us-south
repo_git_id 通过提供 URL.NET Framework 2.0,您可以使用自己现有的应用程序资源库。 这将为您的应用程序库创建一个集成,而不是克隆默认示例。 存在于不同组织中的存储库需要使用 Git 令牌。 参见可选变量中的 app_repo_git_token_secret_name。 string us-south
evidence_repo_existing_url 除 SCC 和 Event Notifications 外,所有资源都部署在该区域。 这些资源应单独设置,默认设置为 us-south。 string us-south
issues_repo_existing_url 提供事件通知实例的区域。 string us-south
inventory_repo_existing_url 配置 Security and Compliance Center 实例的区域。 string us-south
cd_deployment_repo_existing_url 通过提供 URL.NET Framework 2.0,您可以使用自己现有的应用程序资源库。 这将为您的应用程序库创建一个集成,而不是克隆默认示例。 存在于不同组织中的存储库需要使用 Git 令牌。 参见可选变量中的 app_repo_git_token_secret_name。 string us-south
change_management_existing_url 除 SCC 和 Event Notifications 外,所有资源都部署在该区域。 这些资源应单独设置,默认设置为 us-south。 string us-south
create_triggers 提供事件通知实例的区域。 string us-south
create_git_triggers 配置 Security and Compliance Center 实例的区域。 string us-south
compliance_pipeline_repo_use_group_settings 通过提供 URL.NET Framework 2.0,您可以使用自己现有的应用程序资源库。 这将为您的应用程序库创建一个集成,而不是克隆默认示例。 存在于不同组织中的存储库需要使用 Git 令牌。 参见可选变量中的 app_repo_git_token_secret_name。 string us-south
compliance_pipeline_repo_git_provider 除 SCC 和 Event Notifications 外,所有资源都部署在该区域。 这些资源应单独设置,默认设置为 us-south。 string us-south
compliance_pipeline_repo_git_id 提供事件通知实例的区域。 string us-south
compliance_pipeline_existing_repo_url 配置 Security and Compliance Center 实例的区域。 string us-south
add_pipeline_definitions 通过提供 URL.NET Framework 2.0,您可以使用自己现有的应用程序资源库。 这将为您的应用程序库创建一个集成,而不是克隆默认示例。 存在于不同组织中的存储库需要使用 Git 令牌。 参见可选变量中的 app_repo_git_token_secret_name。 string us-south
create_privateworker_secret 除 SCC 和 Event Notifications 外,所有资源都部署在该区域。 这些资源应单独设置,默认设置为 us-south。 string us-south
enable_privateworker 提供事件通知实例的区域。 string us-south
privateworker_credentials_secret_name 配置 Security and Compliance Center 实例的区域。 string us-south
privateworker_secret_value 通过提供 URL.NET Framework 2.0,您可以使用自己现有的应用程序资源库。 这将为您的应用程序库创建一个集成,而不是克隆默认示例。 存在于不同组织中的存储库需要使用 Git 令牌。 参见可选变量中的 app_repo_git_token_secret_name。 string us-south

创建 IBM Cloud® API 密钥,并赋予其创建可部署架构的权限

创建 IBM Cloud® API 密钥

根据您的 IBM Cloud 账户类型,访问某些资源可能会受到限制。 根据您的账户计划限制,某些 DevSecOps 工具链需要的某些功能可能无法使用。 有关更多信息,请参阅 设置您的 IBM Cloud 帐户升级您的帐户

创建 IBM Cloud® 受信任配置文件,并赋予其创建可部署架构的权限

创建 IBM Cloud® 受信任档案