Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Los usuarios y las cuentas de servicio pueden usar claves públicas SSH para autenticarse en los repositorios de Secure Source Manager. En esta página, se describe cómo generar un par de claves SSH y, luego, agregarlo como método de autenticación en la interfaz web de Secure Source Manager.
Secure Source Manager admite los tipos de claves SSH RSA, ECDSA y Ed25519.
Roles requeridos
Para obtener los permisos que necesitas para autenticarte con claves públicas SSH, pídele a tu administrador que te otorgue los siguientes roles de IAM:
Para agregar una clave SSH para un usuario, haz lo siguiente:
Secure Source Manager Instance Accessor (roles/securesourcemanager.instanceAccessor)
en la instancia de Secure Source Manager
Para agregar una clave SSH para una cuenta de servicio, haz lo siguiente:
Estos roles predefinidos contienen los permisos necesarios para autenticarse con claves públicas SSH. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para autenticarse con claves públicas SSH:
securesourcemanager.sshkeys.createAny
en la instancia de Secure Source Manager
Para asignar una clave SSH a una cuenta de servicio, haz lo siguiente:
iam.serviceAccounts.actAs
en la cuenta de servicio
En el símbolo del sistema, ingresa el siguiente comando:
ssh-keygen-t[KEY_TYPE]-C"[USER_EMAIL]"
Donde:
[USER_EMAIL] es tu dirección de correo electrónico.
[KEY_TYPE]: Es uno de rsa, ecdsa o ed25519.
Por ejemplo:
ssh-keygen-trsa-C"user@example.com"
Cuando se te solicite, ingresa una ubicación y un nombre de archivo para el archivo de clave pública.
Para aceptar la ubicación y el nombre de archivo predeterminados, presiona Intro.
Cuando se te solicite, deja la frase de contraseña en blanco y presiona Intro.
En la ventana que se abre, selecciona el tipo de clave en el campo Parameters.
Haz clic en Generate.
PuTTYGen muestra la string de clave pública generada.
Cuando se te solicite, deja la frase de contraseña en blanco y presiona Intro.
Para guardar el par de claves que generaste en tu sistema local, haz clic en Save public key y Save private key.
Agrega claves SSH para los usuarios
En la interfaz web de Secure Source Manager, en la página de la instancia o el repositorio, haz clic en el menú more_vertmás opciones.
Haz clic en User SSH keys.
Se abrirá la página Claves SSH del usuario, en la que se mostrará una lista de las claves existentes que hayas creado.
En la página Claves SSH del usuario, haz clic en Agregar clave.
En la página Agregar clave SSH, ingresa los siguientes valores para tu clave:
Título: Agrega un título descriptivo para la clave.
Clave pública SSH: Pega la cadena de tu clave pública. Para obtener tu cadena de clave pública, ejecuta el siguiente comando:
cat ~/.ssh/FILENAME.pub
En el ejemplo anterior, FILENAME es el nombre que le asignaste al archivo de claves.
Puedes usar claves SSH para autenticarte en cualquier repositorio de Secure Source Manager, siempre que tengas los permisos necesarios en ese repositorio.
Agrega claves SSH para cuentas de servicio
Para permitir el acceso programático a tu repositorio, puedes agregar una clave SSH para una cuenta de servicio.
Si aún no tienes una cuenta de servicio que quieras usar, crea una.
En la interfaz web de Secure Source Manager, haz clic en el menú more_vertmás opciones.
Haz clic en Llaves SSH de cuentas de servicio. Se abrirá la página Claves SSH de la cuenta de servicio, en la que se mostrará una lista de las claves existentes que agregaste.
En la página Claves SSH de la cuenta de servicio, haz clic en Agregar clave.
En la página Agregar clave SSH de la cuenta de servicio, ingresa los siguientes valores para tu clave:
Título: Un título descriptivo para la clave
Cuenta de servicio: Es el correo electrónico de la cuenta de servicio que deseas usar con la clave SSH en el formato SA_NAME@PROJECT_ID.iam.gserviceaccount.com.
Dónde
SA_NAME es el nombre de la cuenta de servicio.
PROJECT_ID es el ID del proyecto en el que se creó la cuenta de servicio.
Clave pública SSH: Tu clave pública SSH. Consulta Genera un par de claves para obtener información sobre cómo generar un par de claves SSH.
Si la cuenta de servicio no está en el mismo proyecto que tu instancia de Secure Source Manager, otorga al agente de servicio de Secure Source Manager uno de los siguientes roles o permisos en la cuenta de servicio que deseas usar:
Permiso iam.serviceAccounts.signJwt
Rol de creador de tokens de cuenta de servicio (roles/iam.serviceAccountTokenCreator)
Ejecuta el siguiente comando para agregar una política de IAM a tu cuenta de servicio de Secure Source Manager y otorgarle el rol de Creador de tokens de cuenta de servicio.
Aquí, SERVICE_ACCOUNT es la cuenta de servicio que deseas usar y INSTANCE_PROJECT_NUMBER es el número de proyecto de tu instancia de Secure Source Manager.
El SERVICE_ACCOUNT debe tener el formato de un ID numérico de cuenta de servicio o de un correo electrónico, como 123456789876543212345 o my-iam-account@somedomain.com.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-09-04 (UTC)"],[],[],null,["# Authenticate using SSH public keys\n\nUsers and service accounts can use SSH public keys to authenticate to\nSecure Source Manager repositories. This page describes how to generate an\nSSH key pair, and then add it as an authentication method in the\nSecure Source Manager web interface.\n\nSecure Source Manager supports RSA, ECDSA, and Ed25519 SSH key types.\n\nRequired roles\n--------------\n\n\nTo get the permissions that\nyou need to authenticate using SSH public keys,\n\nask your administrator to grant you the\nfollowing IAM roles:\n\n- To add an SSH key for a user: [Secure Source Manager Instance Accessor](/iam/docs/roles-permissions/securesourcemanager#securesourcemanager.instanceAccessor) (`roles/securesourcemanager.instanceAccessor`) on the Secure Source Manager instance\n- To add an SSH key for a service account:\n - [Secure Source Manager Instance Manager](/iam/docs/roles-permissions/securesourcemanager#securesourcemanager.instanceManager) (`roles/securesourcemanager.instanceManager`) on the Secure Source Manager instance\n - [Service Account User](/iam/docs/roles-permissions/iam#iam.serviceAccountUser) (`roles/iam.serviceAccountUser`) on the service account\n\n\nFor more information about granting roles, see [Manage access to projects, folders, and organizations](/iam/docs/granting-changing-revoking-access).\n\n\nThese predefined roles contain\n\nthe permissions required to authenticate using SSH public keys. To see the exact permissions that are\nrequired, expand the **Required permissions** section:\n\n\n#### Required permissions\n\nThe following permissions are required to authenticate using SSH public keys:\n\n- ` ``securesourcemanager.sshkeys.createAny` on the Secure Source Manager instance\n- To assign an SSH key to a service account: ` ``iam.serviceAccounts.actAs` on the service account\n\n\nYou might also be able to get\nthese permissions\nwith [custom roles](/iam/docs/creating-custom-roles) or\nother [predefined roles](/iam/docs/roles-overview#predefined).\n\nFor information on granting Secure Source Manager roles,\nsee [Access control with IAM](/secure-source-manager/docs/access-control) and\n[Grant users instance access](/secure-source-manager/docs/grant-users-instance-access).\n\nGenerate a key pair\n-------------------\n\nAn SSH key pair consists of a private key that resides on your local system and\na public key that you register with Google Cloud. \n\n### Linux or macOS\n\n1. Install\n [OpenSSH](https://www.openssh.com/)\n on your local system.\n\n2. At a command prompt, enter the following command:\n\n ssh-keygen -t [KEY_TYPE] -C \"[USER_EMAIL]\"\n\n Where:\n - `[USER_EMAIL]` is your email address.\n - `[KEY_TYPE]` is one of `rsa`, `ecdsa`, or `ed25519`.\n\n For example: \n\n ssh-keygen -t rsa -C \"user@example.com\"\n\n 1. When prompted, enter a location and filename for the public key file.\n To accept the default location and filename, press **Enter**.\n\n 2. When prompted, leave the passphrase empty and press **Enter**.\n\n### Windows\n\n1. Install\n [PuTTY](https://www.putty.org/)\n on your local system.\n\n2. From the Windows **Start** menu, start PuTTYGen.\n\n3. In the window that opens, select the key type from the **Parameters**\n field.\n\n4. Click **Generate**.\n\n PuTTYGen displays the generated public key string.\n5. When prompted, leave the passphrase empty and press **Enter**.\n\n6. To save the key pair you generated to your local system, click\n **Save Public Key** and **Save Private Key**.\n\nAdd SSH keys for users\n----------------------\n\n1. In the Secure Source Manager web interface, from the instance or repository page, click the more_vert **more options** menu.\n2. Click **User SSH keys**.\n\n The **User SSH keys** page opens, and a list of\n any existing keys you've created is displayed.\n3. In the **User SSH keys** page, click **Add key**.\n\n4. In the **Add SSH Key** page, enter the following values for your key:\n\n 1. **Title**: add a descriptive title for the key.\n 2. **SSH public key**: paste your public key string. To get your public key string, run the following command:\n\n cat ~/.ssh/\u003cvar translate=\"no\"\u003eFILENAME\u003c/var\u003e.pub\n\n Where \u003cvar translate=\"no\"\u003e\u003ccode translate=\"no\" dir=\"ltr\"\u003eFILENAME\u003c/code\u003e\u003c/var\u003e is the name you gave the key file.\n\nYou can use SSH keys to authenticate to any Secure Source Manager repository\nprovided you have the needed permissions on that repository.\n\nAdd SSH keys for service accounts\n---------------------------------\n\nTo allow programmatic access to your repository, you can add an SSH key for a\nservice account.\n\n1. If you don't already have a service account that you want to use, [create a service account](/iam/docs/creating-managing-service-accounts#creating).\n2. From the Secure Source Manager web interface, click the more_vert **more options** menu.\n3. Click **Service account SSH keys** . The **Service account SSH keys** page opens, and a list of any existing keys you've added is displayed.\n4. In the **Service account SSH keys** page, click **Add key**.\n5. In the **Add service account SSH key** page, enter the following values\n for your key:\n\n 1. **Title**: a descriptive title for the key\n 2. **Service account** : the service account email for the service\n account you want to use the SSH key in the format\n \u003cvar translate=\"no\"\u003eSA_NAME\u003c/var\u003e`@`\u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e`.iam.gserviceaccount.com`\n\n Where\n - \u003cvar translate=\"no\"\u003e\u003ccode translate=\"no\" dir=\"ltr\"\u003eSA_NAME\u003c/code\u003e\u003c/var\u003e is the service account name.\n - \u003cvar translate=\"no\"\u003e\u003ccode translate=\"no\" dir=\"ltr\"\u003ePROJECT_ID\u003c/code\u003e\u003c/var\u003e is the project ID of the project the service account was created in.\n 3. **SSH Public Key** : Your public SSH key. See\n [Generate a key pair](#generate-key-pair) for information on how to\n generate an SSH key pair.\n\n6. If the service account is not in the same project as your\n Secure Source Manager instance, give Secure Source Manager's\n [service agent](/iam/docs/service-agents)\n one of the following roles or permissions on the service account you want to\n use:\n\n - `iam.serviceAccounts.signJwt` permission\n - Service Account Token Creator (`roles/iam.serviceAccountTokenCreator`) role\n\n\n Run the following command to add an IAM policy to your\n Secure Source Manager service account to grant it the Service Account\n Token Creator role. \n\n gcloud iam service-accounts add-iam-policy-binding \u003cvar translate=\"no\"\u003eSERVICE_ACCOUNT\u003c/var\u003e \\\n --member=\"serviceAccount:service-\u003cvar translate=\"no\"\u003eINSTANCE_PROJECT_NUMBER\u003c/var\u003e@gcp-sa-sourcemanager.iam.gserviceaccount.com\" \\\n --role=\"roles/iam.serviceAccountTokenCreator\"\n\n Where \u003cvar translate=\"no\"\u003eSERVICE_ACCOUNT\u003c/var\u003e is the service account you want to use and\n \u003cvar translate=\"no\"\u003eINSTANCE_PROJECT_NUMBER\u003c/var\u003e is the project number of your\n Secure Source Manager instance.\n\n The \u003cvar translate=\"no\"\u003eSERVICE_ACCOUNT\u003c/var\u003e should be formatted either as a numeric\n service account ID or as an email, like this: 123456789876543212345 or\n my-iam-account@somedomain.com.\n\nWhat's next\n-----------\n\n- [Connect to Cloud Build](/secure-source-manager/docs/connect-cloud-build).\n- [Connect to Jenkins](/secure-source-manager/docs/connect-jenkins)."]]