El premium de software de código abierto garantizado (Assured OSS) nivel te permite mejorar el código a través de los paquetes OSS que Google usa para su propio desarrollador en los flujos de trabajo. Cuando usas Assured OSS, tus desarrolladores pueden aprovechar los conocimientos y la experiencia en seguridad que Google aplica a que protegen sus dependencias de código abierto.
Cuando integras Assured OSS con Security Command Center, puedes hacer lo siguiente: lo siguiente:
- Elige entre miles de paquetes de Java y Python seleccionados y más populares, incluidas las estrategias de inteligencia en proyectos como TensorFlow, Pandas y scikit-learn.
- Configura un proxy seguro para descargar todo Java, Python y JavaScript paquetes con certificaciones de Assured OSS, lo que convierte a Google en conocido y de confianza.
- Usar las SBOM y VEX en Assured OSS que se proporcionan en los estándares de la industria como SPDX y CycloneDX, para saber más sobre tus ingredientes.
- Aumenta la confianza en la integridad de los paquetes que usas a través de la procedencia de Google con evidencias de alteraciones firmadas.
- Disminuya los riesgos de seguridad, ya que Google analiza, encuentra y corrige nuevos mensajes de forma activa en paquetes seleccionados.
Antes de comenzar
Completa estas tareas antes de completar las tareas restantes de esta página.
Activar el nivel de Security Command Center Enterprise
Verifica que el Security Command Center Enterprise nivel se activa en el a nivel de organización y de que completaste los primeros seis pasos de la guía de configuración.
Configura permisos a nivel de la organización
Debes configurar permisos a nivel de organización y a nivel de proyecto.
-
Make sure that you have the following role or roles on the organization: Security Center Admin, Organization Admin
Check for the roles
-
In the Google Cloud console, go to the IAM page.
Go to IAM - Select the organization.
-
In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.
- For all rows that specify or include you, check the Role colunn to see whether the list of roles includes the required roles.
Grant the roles
-
In the Google Cloud console, go to the IAM page.
Ir a IAM - Selecciona la organización.
- Haz clic en Grant access.
-
En el campo Principales nuevas, ingresa tu identificador de usuario. Esta suele ser la dirección de correo electrónico de una Cuenta de Google.
- En la lista Seleccionar un rol, elige un rol.
- Para otorgar funciones adicionales, haz clic en Agregar otro rol y agrega cada rol adicional.
- Haz clic en Guardar.
Configura permisos a nivel del proyecto
-
Make sure that you have the following role or roles on the project: Service Usage Admin, Service Account Admin, Project IAM Admin
Check for the roles
-
In the Google Cloud console, go to the IAM page.
Go to IAM - Select the project.
-
In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.
- For all rows that specify or include you, check the Role colunn to see whether the list of roles includes the required roles.
Grant the roles
-
In the Google Cloud console, go to the IAM page.
Ir a IAM - Selecciona el proyecto.
- Haz clic en Grant access.
-
En el campo Principales nuevas, ingresa tu identificador de usuario. Esta suele ser la dirección de correo electrónico de una Cuenta de Google.
- En la lista Seleccionar un rol, elige un rol.
- Para otorgar funciones adicionales, haz clic en Agregar otro rol y agrega cada rol adicional.
- Haz clic en Guardar.
Configura Google Cloud CLI
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Configurar Assured OSS
Console
En la consola de Google Cloud, ve a la página Descripción general del riesgo de Security Command Center.
Verifica que estás viendo la organización a la que activaste Nivel de Security Command Center Enterprise activado.
Haz clic en Ver la guía de configuración.
Haz clic en Configurar la seguridad de código.
Selecciona una cuenta de servicio nueva o las existentes que al que deseas agregar los permisos del Software de código abierto garantizado.
Selecciona el proyecto de Google Cloud en el que quieres ubicar la Recursos de Assured OSS
Haz clic en Configurar Assured OSS.
El proceso de configuración completa de forma automática lo siguiente:
- Si se selecciona, crea la nueva cuenta de servicio.
assuredoss@PROJECT_ID.gservicesaccount.com
- Asigna el rol de usuario de Assured OSS a la cuenta de servicio designada para usar con Assured OSS.
- Asigna el rol de administrador de Assured OSS a la cuenta de usuario que accedió. que la cuenta puede configurar el servicio.
- Habilita la API de Assured Open Source Software y, si aún no está habilitada, la API de Artifact Registry
- Configura el servicio de proxy de Assured OSS en una Instancia de Artifact Registry en el proyecto que seleccionaste. R se aprovisiona para cada lenguaje (Java, Python y JavaScript). Estos repositorios pueden extraer paquetes automáticamente el portfolio seleccionado. Si un paquete no está disponible como parte del cartera seleccionada, los repositorios redireccionan la solicitud al repositorios canónicos. El servicio de proxy solo admite la región de EE.UU.
- Otorga permisos a ti y a la cuenta de servicio para acceder al paquete metadatos y notificaciones de proyectos de Google.
- Si se selecciona, crea la nueva cuenta de servicio.
Crea una cuenta de servicio clave para cada cuenta de servicio designada de Assured OSS y descarga la clave en formato JSON.
En la línea de comandos de tu máquina local, ejecuta el siguiente comando en el archivo de claves descargado para obtener codificada en base64:
base64 KEY_FILENAME.json
Reemplaza
KEY_FILENAME.json
por el nombre del de la cuenta de servicio que descargaste.Necesitas la cadena codificada en base64 cuando configuras un repositorio remoto para Assured OSS.
Para descargar los paquetes, usa los extremos que Hay disposiciones de Assured OSS para cada idioma. Toma nota de estos extremos para usarlos más adelante.
- Java:
https://us-maven.pkg.dev/PROJECT_ID/assuredoss-java
- Python:
https://us-python.pkg.dev/
PROJECT_ID
/assuredoss-python - JavaScript:
https://us-npm.pkg.dev/
PROJECT_ID
/assuredoss-javascript
Reemplaza
PROJECT_ID
por el ID del proyecto que seleccionaste cuando configuraste Assured OSS.- Java:
Haz clic en Siguiente. Configurar Assured OSS con el administrador de repositorios de artefactos de tu organización, como JFrog Artifactory o Sonatype Nexus.
gcloud
Autentícate en Google Cloud con la cuenta de usuario que quieras usar para habilitar Assured OSS:
gcloud auth revoke gcloud auth application-default revoke gcloud auth login
Busca el proyecto en el que quieras ubicar la Recursos de Assured OSS:
gcloud alpha projects search --query="displayName=PROJECT_NAME"
Reemplaza
PROJECT_NAME
por el nombre del proyecto.Establece el proyecto en el que deseas ubicar Assured OSS. recursos:
gcloud config set project PROJECT_ID
Reemplaza
PROJECT_ID
por el identificador del proyecto.Otorga roles a la cuenta de usuario para configurar Assured OSS:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=user:email@domain.com \ --role=roles/assuredoss.admin gcloud projects add-iam-policy-binding PROJECT_ID \ --member=user:email@domain.com \ --role=roles/serviceusage.serviceUsageAdmin gcloud projects add-iam-policy-binding PROJECT_ID \ --member=user:email@domain.com \ --role=roles/iam.serviceAccountAdmin
Donde
email@domain.com
es la dirección de correo electrónico de tu cuenta de usuario.Habilita Assured OSS en el proyecto. Habilitando Assured OSS también habilita la API de Artifact Registry.
gcloud services enable assuredoss.googleapis.com
Crear una nueva cuenta de servicio para Assured OSS en lugar de con cuentas de servicio existentes, completa lo siguiente:
gcloud iam service-accounts create SERVICE_ACCOUNT_NAME \ --description="Service account for using Assured OSS" --display-name="Assured OSS service account"
Reemplaza
SERVICE_ACCOUNT_NAME
por el nombre del cuenta de servicio (por ejemplo,assuredoss
).Configura las cuentas de servicio para Assured OSS:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \ --role roles/assuredoss.user
Reemplaza lo siguiente:
SERVICE_ACCOUNT_NAME
: Es el nombre de la cuenta de servicio (por ejemplo,assuredoss
).PROJECT_ID
: Es el identificador del proyecto.
Configura el servicio de proxy de Assured OSS en un Artifact Registry a través de la creación de repositorios de Assured OSS. Debes crear repositorios para todos los lenguajes. Assured OSS servicio de proxy que aprovisiona los repositorios admite la región de EE.UU. solamente.
alias gcurlj='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" -X' gcurlj POST https://artifactregistry.googleapis.com/v1/projects/PROJECT_ID/locations/us/repositories\?repositoryId\=assuredoss-java -d '{"format": "MAVEN", "mode": "AOSS_REPOSITORY"}' gcurlj POST https://artifactregistry.googleapis.com/v1/projects/PROJECT_ID/locations/us/repositories\?repositoryId\=assuredoss-javascript -d '{"format": "NPM", "mode": "AOSS_REPOSITORY"}' gcurlj POST https://artifactregistry.googleapis.com/v1/projects/PROJECT_ID/locations/us/repositories\?repositoryId\=assuredoss-python -d '{"format": "PYTHON", "mode": "AOSS_REPOSITORY"}'
Reemplaza
PROJECT_ID
por el ID del proyecto que seleccionaste cuando configuraste Assured OSS.Estos repositorios pueden extraer automáticamente paquetes de la en tu portafolio. Si un paquete no está disponible como parte del portfolio seleccionado, los repositorios redireccionan la solicitud a los repositorios canónicos.
Crea una clave de cuenta de servicio para cada cuenta de servicio de Assured OSS y descarga la clave en formato JSON.
En la línea de comandos, ejecuta el siguiente comando en el archivo de claves descargado para obtener codificada en base64:
base64 KEY_FILENAME.json
Reemplaza
KEY_FILENAME.json
por el nombre del de la cuenta de servicio que descargaste.Necesitas la cadena codificada en base64 cuando configuras un repositorio remoto para Assured OSS.
Para descargar los paquetes, usa los extremos aprovisionados por Assured OSS para cada idioma. Toma nota extremos:
- Java:
https://us-maven.pkg.dev/PROJECT_ID/assuredoss-java
- Python:
https://us-python.pkg.dev/
PROJECT_ID
/assuredoss-python - JavaScript:
https://us-npm.pkg.dev/
PROJECT_ID
/assuredoss-javascript
Reemplaza
PROJECT_ID
por el ID del proyecto que seleccionaste cuando configuraste Assured OSS.- Java:
Configurar Assured OSS para descargar paquetes con el administrador de repositorios de artefactos de tu organización como JFrog Artifactory o Sonatype Nexus.
De manera opcional, consulta los paquetes disponibles de Java, Python y JavaScript:
gcloud auth revoke gcloud auth application-default revoke gcloud auth login --cred-file=KEY_FILENAME.json
Reemplaza
KEY_FILENAME.json
por el nombre del de la cuenta de servicio que descargaste.export GOOGLE_APPLICATION_CREDENTIALS=KEY_FILENAME.json
Reemplaza
KEY_FILENAME.json
por el nombre del de la cuenta de servicio que descargaste.gcurlj GET "https://artifactregistry.googleapis.com/v1/projects/PROJECT_ID/locations/us/repositories/assuredoss-java/packages" gcurlj GET "https://artifactregistry.googleapis.com/v1/projects/PROJECT_ID/locations/us/repositories/assuredoss-python/packages" gcurlj GET "https://artifactregistry.googleapis.com/v1/projects/PROJECT_ID/locations/us/repositories/assuredoss-javascript/packages"
Reemplaza
PROJECT_ID
por el ID del proyecto que seleccionaste cuando configuraste Assured OSS.
¿Qué sigue?
- Valida tu conexión
- Cómo descargar paquetes de Java
- Descargar paquetes de Python
- Configura un repositorio remoto
- Verifica los metadatos de seguridad
- Cómo configurar las notificaciones para las actualizaciones de paquetes
-
-