Integración de Ostorlab con GitLab
En esta guía, exploraremos cómo integrar fácilmente las pruebas de seguridad autónomas de Ostorlab para aplicaciones móviles Android e iOS en su proceso de compilación de gitlab.
Generar una nueva clave API
El primer paso es generar una clave API. Para hacerlo, simplemente siga los siguientes pasos:
Vaya a report.ostorlab.co
Haga clic en el botón Menú

Haga clic en Integrations/API para expandir

Haga clic en API Keys

Haga clic en New para generar una nueva clave API

Copie la clave API. También puede agregar un nombre y una fecha de caducidad a su clave.

No olvide hacer clic en el botón guardar para guardar su clave.

Creación de un Pipeline Gitlab-CI:
Ejemplo para usar en su .gitlab-ci.yml
stages:
- build
- test
build:
stage: build
script:
- Pre steps to build
- ./gradlew assembleDebug
artifacts:
paths:
- app/build/outputs/
runScanOstorlab:
stage: test
image: ostorlab/gitlab-ci
variables:
OSTORLAB_FILE_PATH: app/build/outputs/apk/debug/app-debug.apk
OSTORLAB_PLATFORM: android
OSTORLAB_UI_PROMPT_NAMES: "shop;profile;cart;settings"
OSTORLAB_UI_PROMPT_ACTIONS: "search for a product named 'laptop' and add it to cart;open the profile tab and update email;review cart and proceed to checkout;open settings and enable notifications"
OSTORLAB_UI_PROMPT_IDS: "123;456"
script:
- run_ostorlab.sh
Variables de entorno requeridas
OSTORLAB_API_KEY=API_KEY- Especifica su clave APIOSTORLAB_FILE_PATH=FILE_PATH- Especifica la ruta al apk de Android o ipa de IOSOSTORLAB_PLATFORM=PLATFORM- Especifica la plataforma android o ios
Variables de entorno opcionales
Los siguientes son parámetros opcionales que se pueden configurar a partir de variables de entorno:
OSTORLAB_PLAN=free or static_dynamic_backend- Especifica su plan de escaneo (free para escaneos de la comunidad y static_dynamic_backend para análisis completo).OSTORLAB_TITLE=My Title- Especifica el título del escaneo.OSTORLAB_WAIT_FOR_RESULTS=true- Establézcalo en true si desea esperar a que finalice el escaneo y recuperar el resultado.OSTORLAB_WAIT_MINUTES=30- Especifica el número de minutos a esperar DEFAULT=30min.OSTORLAB_BREAK_BUILD_ON_SCORE=true- Establézcalo en true para generar una excepción si la calificación de riesgo (risk rating) del escaneo es superior al umbral.OSTORLAB_RISK_THRESHOLD=medium- Especifica su umbral de calificación de riesgo (risk rating).OSTORLAB_UI_PROMPT_NAMES- Una lista de nombres de avisos de interfaz de usuario (UI prompt) separados por punto y coma. Por ejemplo:shop;profile;cart;settings. Cada nombre corresponde por posición a una acción enOSTORLAB_UI_PROMPT_ACTIONS.OSTORLAB_UI_PROMPT_ACTIONS- Una lista de acciones de avisos de interfaz de usuario separadas por punto y coma. Por ejemplo:search for a product named "laptop" and add it to cart;open the profile tab and update email;review cart and proceed to checkout;open settings and enable notifications. Cada acción corresponde por posición a un nombre enOSTORLAB_UI_PROMPT_NAMES.OSTORLAB_UI_PROMPT_IDS- Una lista de IDs de flujo de avisos de interfaz de usuario separados por punto y coma para reutilizar flujos de avisos existentes. Por ejemplo:123e4567-e89b-12d3-a456-426614174000;abcdef12-3456-7890-abcd-ef1234567890. Puede utilizar esto además de o en lugar de las variables nombre/acción. Se pueden proporcionar varios IDs. Nota: El número de nombres y acciones debe coincidir, y cada par nombre/acción es posicional. Puede utilizar variables de nombre/acción y de ID juntas.
Agregar variables de entorno en el Pipeline de Gitlab
Para agregar variables de entorno en su Pipeline de Gitlab, navegue a Configuración (settings) luego a CI/CD, y luego salte a la sección Variables para agregar variables de entorno para su pipeline de la siguiente manera:

Después de eso, puede ver que la variable se agrega a la lista de variables.

Una vez que el job finaliza, si elige esperar el resultado del escaneo y detenerse si la calificación de riesgo es superior al umbral, entonces el job podría fallar si su calificación de riesgo es igual o superior al umbral. De lo contrario, el job tendrá éxito con una línea que indica la calificación de riesgo del escaneo.

Esta guía cubrió los pasos necesarios para integrar de manera efectiva y fácil las pruebas de seguridad autónomas de Ostorlab para aplicaciones móviles Android e iOS en su proceso de compilación de gitlab.