GoCD
轻松将针对 Android 和 iOS 移动应用程序的 Ostorlab 自动安全扫描集成到您的 GoCd 构建流程中。
用法:
生成 Ostorlab API 密钥
- 访问 API 密钥菜单
- 点击新建 (new) 按钮生成新密钥
- 复制 API 密钥(您可以为密钥添加名称和过期日期)
- 点击保存 (save) 按钮保存您的密钥

将 Ostorlab 作为命令行阶段添加到 GoCd
-
前往您的
GoCd仪表板并选择您的管道。
-
点击管道上的
Edit。
-
选择 Stages。

-
添加新阶段 (stage) 并填写表单。
- 初始作业类型选择
Custom Command。 - 并提供以下参数:
Command:bashArguments: |-c pip install ostorlab- 点击保存。

- 初始作业类型选择
-
导航至
JOBS选项卡并选择新添加的作业。
-
再添加一个任务来运行作业。
- 点击添加类型为
Custom Command的 Task。 - 并提供以下参数:
Command:bashArguments: |请查看下面的-c ostorlab --api-key=$OSTORLAB_API_KEY ci-scan run --title=$Scan_Title --scan-profile=$SCAN_PROFILE android-apk /path/to/app.apkAdditional options以获取完整的选项列表。

- 点击添加类型为
-
添加环境变量
- 导航至
ENVIRONMENT VARIABLES选项卡。 - 将
OSTORLAB_API_KEY添加为Secure Variable。 - 将其他变量(Scan_Title, SCAN_PROFILE, ...)添加为
Plain Text Variables。

- 导航至
其他选项
以下是 ostorlab ci-scan run 命令的完整选项列表:
ostorlab --api-key ci-scan run --option <asset-type> <target>
-
--api-key: Ostorlab 生成的 API 密钥。
-
--title: 扫描标题 (Scan title)。
-
--scan-profile: 扫描类型。可选选项为:
fast_scan: 仅运行静态分析;full_scan: 运行静态、动态和后端分析。
-
测试凭据 (Test credentials):动态分析全面扫描中的自动身份验证:
- --test-credentials-login: 用于登录字段的用户名;
- --test-credentials-password: 用于密码字段的密码;
- --test-credentials-role: 可选的角色字段;
- 自定义/通用测试凭据:
- --test-credentials-name: 字段的自定义名称;
- --test-credentials-value: 字段的自定义值
-
2FA 凭据 (2FA Credentials):
- SMS 2FA:
- --sms-2fa-sender: 了解有关 SMS 2FA 的更多信息
- Email 2FA:
- --email-2fa-sender-email-address, --email-2fa-email-address, --email-2fa-password: 了解有关 Email 2FA 的更多信息
- TOTP 2FA:
- --totp-2fa-seed: 了解有关 TOTP 2FA 的更多信息
- SMS 2FA:
-
--sbom: sbom 文件的路径。
-
UI 提示(可选): Ostorlab 支持 UI 提示以引导扫描器通过您应用的用户界面。您可以使用:
- --ui-prompt-name 和 --ui-prompt-action: 通过指定名称和操作来定义 UI 步骤。您可以为一系列步骤添加多个键值对。例如:
--ui-prompt-name accept-terms --ui-prompt-action "Scroll down and tap the 'Accept Terms' checkbox." --ui-prompt-name submit --ui-prompt-action "Tap the 'Submit' button to complete the login process." - --ui-prompt-id: 通过 ID 引用现有的 UI 提示流。您可以添加多个 ID。例如:
--ui-prompt-id 123 --ui-prompt-id 456
- --ui-prompt-name 和 --ui-prompt-action: 通过指定名称和操作来定义 UI 步骤。您可以为一系列步骤添加多个键值对。例如:
-
asset-type: 要扫描的资产类型。可能的值:
android-aab: 扫描 Android.AAB包文件;android-apk: 扫描 Android.APK包文件;ios-ipa: 扫描 iOS.IPA包文件;
-
target: 目标应用程序的路径。