En esta página, se explica cómo crear claves de reCAPTCHA (también conocidas como claves) para verificar las interacciones de los usuarios en tus aplicaciones para dispositivos móviles.
Las claves de reCAPTCHA representan cómo se configura reCAPTCHA. para una aplicación (app) para dispositivos móviles.
Antes de comenzar
- Prepara tu entorno para reCAPTCHA.
- Asegúrate de tener el siguiente rol de administración de identidades y accesos: Administrador de reCAPTCHA Enterprise (
roles/recaptchaenterprise.admin
).
Crea una clave de reCAPTCHA
Solo puedes crear claves basadas en puntuaciones destinadas a aplicaciones para dispositivos móviles.
Te recomendamos lo siguiente cuando crees claves de reCAPTCHA para aplicaciones para dispositivos móviles:
- Crea una clave de reCAPTCHA para cada aplicación para dispositivos móviles.
En Android, crea claves independientes para las siguientes situaciones:
- El paquete para Android solo está disponible en Google Play Store.
- El paquete de Android solo está disponible en tiendas de aplicaciones que no pertenecen a Google Play Store.
Crea claves de reCAPTCHA separadas para la etapa de pruebas y la producción entornos de prueba. De lo contrario, corres el riesgo de contaminar el análisis de riesgos de reCAPTCHA con datos de tu entorno de pruebas.
La forma más sencilla de crear una clave de reCAPTCHA es a través de la console de Google Cloud. Como alternativa, puedes usar la API de reCAPTCHA Enterprise o Google Cloud CLI.
Console
En la consola de Google Cloud, ve a la página reCAPTCHA.
Verifica que el nombre de tu proyecto aparezca en el selector de recursos en la parte superior de la página.
Si no ves el nombre de tu proyecto, haz clic en el selector de recursos y, luego, selecciona tu proyecto.
- Haz clic en Crear clave.
- En el campo Nombre visible, ingresa un nombre visible para la clave.
- Según el tipo de clave de reCAPTCHA que quieras crear para tu aplicación para dispositivos móviles, realiza la acción adecuada:
- En el menú Elige el tipo de plataforma, selecciona App para iOS.
- En la sección Lista de IDs de paquetes de iOS, haz clic en Agregar ID del paquete de iOS.
En el campo ID del paquete, ingresa el nombre del ID del paquete de iOS.
- Opcional: Para agregar un ID de paquete adicional, haz clic en Add iOS bundle ID (Agregar ID del paquete de iOS). e ingresa el nombre de tu ID del paquete de iOS en el campo Bundle ID.
Opcional: Proporciona la configuración para desarrolladores de Apple.
Te recomendamos que proporciones estos datos porque permiten que reCAPTCHA proporcione puntuaciones de riesgo más precisas para tu tráfico.
Ingresa la siguiente información:
- Clave privada (.p8): Se genera en Developer Center de Apple, en Certificados, identificadores y perfiles.
- Identificador de clave: Es el identificador de clave de desarrollador de Apple (cadena de 10 caracteres).
- ID de equipo: Es el ID del equipo de Apple (string de 10 caracteres) propietario del aprovisionamiento. que se usa para compilar tu aplicación.
- Expande Tipo de clave y verificación de ID del paquete.
- Para proteger la clave reCAPTCHA de los IDs del paquete, asegúrate de que el El botón de activación Inhabilitar la verificación de ID del paquete está desactivado.
-
Para tu entorno que no es de producción, si deseas especificar una puntuación que deseas que la clave muestre cuando se creen evaluaciones para ella, haz lo siguiente:
- Haz clic en el botón de activación Esta es una clave de prueba.
- En el cuadro Puntuación, especifica una puntuación entre 0 y 1.0.
- Haz clic en Crear clave.
- En el menú Elige el tipo de plataforma, selecciona App para Android.
- En la sección Lista de paquetes de Android, haz clic en Agregar Android. paquete.
- En el campo Paquete de Android, ingresa el nombre de tu dispositivo Android. .
- Opcional: Para agregar un paquete adicional, haz clic en Agregar paquete de Android e ingresa el nombre de otro paquete de Android en el campo Paquete de Android.
- Expande Verificación de nombres de paquetes, distribución de apps y claves de prueba.
- Para aplicar la restricción de que la clave de reCAPTCHA solo se use dentro de tu app, desactiva el botón de activación Inhabilitar verificación de nombre de paquete.
- Si quieres crear una clave para una aplicación que está disponible en otras tiendas de aplicaciones además de Google Play Store, activa Compatibilidad con aplicaciones distribuidas fuera de Google Play Store.
-
En tu entorno que no es de producción, si quieres especificar la puntuación que quieres para devolver cuando se cree una evaluación para él, haz lo siguiente:
- Haz clic en el botón de activación Esta es una clave de prueba.
- En el cuadro Puntuación, especifica una puntuación entre 0 y 1.0.
- Haz clic en Crear clave.
Crea claves de reCAPTCHA para las aplicaciones para iOS
Recomendamos crear una clave de reCAPTCHA por aplicación para iOS.
La clave recién creada aparecerá en la página Claves de reCAPTCHA.
Crea claves de reCAPTCHA para aplicaciones para Android
La clave recién creada aparecerá en la página Claves de reCAPTCHA.
gcloud (iOS)
Para crear claves de reCAPTCHA, usa el comando gcloud recaptcha keys create.
Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
- DISPLAY_NAME: Es el nombre de la clave. Por lo general, es el nombre de un sitio.
- BUNDLE_IDs: IDs de paquete de iOS de las apps que pueden usar la clave. Especifica varios IDs de paquete como una lista separada por comas.
Ejecuta el crea claves de recaptcha de gcloud :
Linux, macOS o Cloud Shell
gcloud recaptcha keys create \ --display-name=DISPLAY_NAME \ --ios --bundle-ids=BUNDLE_IDs
Windows (PowerShell)
gcloud recaptcha keys create ` --display-name=DISPLAY_NAME ` --ios --bundle-ids=BUNDLE_IDs
Windows (cmd.exe)
gcloud recaptcha keys create ^ --display-name=DISPLAY_NAME ^ --ios --bundle-ids=BUNDLE_IDs
La respuesta contiene la clave de reCAPTCHA recién creada.
gcloud (Android)
Para crear claves de reCAPTCHA, usa el comando gcloud recaptcha keys create.
Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
- DISPLAY_NAME: Es el nombre de la clave. Por lo general, es el nombre de un sitio.
- PACKAGE_NAMES: Son los nombres de los paquetes de Android de las apps que pueden usar la clave. Especifica varios nombres de paquetes en una lista separada por comas.
Ejecuta el crea claves de recaptcha de gcloud :
Linux, macOS o Cloud Shell
gcloud recaptcha keys create \ --display-name=DISPLAY_NAME \ --android --package-names=PACKAGE_NAMES
Windows (PowerShell)
gcloud recaptcha keys create ` --display-name=DISPLAY_NAME ` --android --package-names=PACKAGE_NAMES
Windows (cmd.exe)
gcloud recaptcha keys create ^ --display-name=DISPLAY_NAME ^ --android --package-names=PACKAGE_NAMES
La respuesta contiene la clave de reCAPTCHA recién creada.
REST (iOS)
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- DISPLAY_NAME: Es el nombre de la clave. Por lo general, es el nombre de una app.
- BUNDLE_IDs: IDs de paquete de iOS de las apps que pueden usar la clave. Especifica varios IDs de paquete como una lista separada por comas.
Método HTTP y URL:
POST https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys
Cuerpo JSON de la solicitud:
{ "displayName": "DISPLAY_NAME", "iosSettings": { "allowedBundleIds":"BUNDLE_IDs" } }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/project-id/keys/6LfhtywnAAAAABY3sCS2duZ6A55kmDXz-PNEgKgT", "displayName": "DISPLAY_NAME", "iosSettings": { "allowAllBundleIds": false, "allowedBundleIds": [ BUNDLE_IDS ] }, "labels": {}, }
REST (Android)
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- DISPLAY_NAME: Es el nombre de la clave. Por lo general, es el nombre de una app.
- PACKAGE_NAMES: Son los nombres de los paquetes de Android de las apps permitidas. usar la clave. Especifica varios nombres de paquetes en una lista separada por comas.
Método HTTP y URL:
POST https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys
Cuerpo JSON de la solicitud:
{ "displayName": "DISPLAY_NAME", "androidSettings": { "allowedPackageNames":"PACKAGE_NAMES" } }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "name": "projects/project-id/keys/6LcioSknAAAAABrjlMuZv2fjIGYMqwaAFC9izhoy", "displayName": "DISPLAY_NAME", "androidSettings": { "allowAllPackageNames": false, "allowedPackageNames": [ PACKAGE_NAMES ], "supportNonGoogleAppStoreDistribution": false }, "labels": {}, }