¿Cómo verificar si un usuario ha iniciado sesión en Google y mostrar un enlace / botón si no lo está?

Estoy escribiendo mi primera aplicación Google App Engine, principalmente como una experiencia de aprendizaje, es una especie de Pastebin muy simple ... No quiero lidiar con el spam, así que pensé que exigir a los usuarios que inicien sesión sería una opción lo suficientemente segura.
En este punto, esto es lo que quiero:

  • El visitante ve la página principal, si el visitante ha iniciado sesión en Google, ve el botón "Guardar y pegar", si el usuario no está conectado ve un enlace / botón para iniciar sesión en Google

He leído algunos artículos y tutoriales ( 1 ) pero me dan la idea de que estaría bloqueando a todos excepto algunos permitidos o que este tipo de autenticación es para administrar mi aplicación en lugar de simplemente verificar si un usuario ha iniciado sesión o no.

Si, por otro lado, puede sugerir un comprobador de spam o similar, que es fácil de implementar, hágamelo saber.

Me resulta particularmente confuso que tengamos que definir el tipo de autenticación al crear la aplicación, ya que esto se implementará mediante un código que no entiendo.

Para resumir: ¿Cómo puedo verificar si un usuario ha iniciado sesión en Google y mostrar un enlace / botón si no lo está?

Nota: estoy usando Java

Respuesta 1

La API de usuarios que mencionas es justo lo que necesitas. Simplemente siga el ejemplo proporcionado en esa página.

Obtiene el usuario, si el usuario no es nulo, muestra el botón Guardar y pegar, también debe establecer la URL de la acción de guardar y pegar para requerir el inicio de sesión. Si el usuario es nulo, muestra la URL de inicio de sesión. En caso de que el usuario no haya iniciado sesión, se mostrará una página de inicio de sesión.

Hay tres tipos de sistemas de autenticación:

  1. Cuentas de Google: disponible para cualquier persona con una cuenta de Google (incluso puede ser una cuenta que no sea de Gmail) Esta es probablemente la opción que desea utilizar.
  2. Google Apps: disponible solo para un dominio específico de Google Apps (por ejemplo, yourcompany.com)
  3. Open Id: disponible para cualquier persona con una identidad OpenId (Google, Yahoo, MySpace, etc.)
Respuesta: 2

Estoy tratando de usar la codificación externa de archivos .dll en c #, en mi aplicación Java, lo que sé sobre el dll que contiene interfaces con funciones que podemos usar, puedo cargar el dll en mi aplicación java, ...

Me preguntaba cómo contar diferentes campos de un objeto usando una sola secuencia. Sé que puedo contar fácilmente una sola propiedad de un objeto usando streams (countedWithStream) o incluso usando un para ...

Dado que tengo una tabla en la que cierto campo tiene un tipo de datos de texto, digamos que FieldValue podría dar texto como tipo de datos. Estoy guardando un objeto de fecha de Java usando el formato completo y guardando esto en el ...

Necesito una forma de convertir las oraciones en solo una cadena de letras minúsculas, es decir, sin espacios, apóstrofes ni nada mientras uso un bucle. String estático toAlphaLowerCase (String s) {String c; ...