2012-05-15 13 views
8

¿Solo me pregunto si el ID de usuario devuelto llamando al user.getUserId() se debe tratar como un secreto, o se puede usar en URL públicas? por ejemplo, las URL de página de perfil se parecen a http://example.com/userprofile/11901930903930 donde 11901930903930 es el ID de usuario generado por Google en Appengine.¿Debería Google Apppengine userId ser tratado como un secreto?

Ésta es la función que estamos utilizando para obtener el ID de usuario:

UserService userService = UserServiceFactory.getUserService(); 
User user = userService.getCurrentUser(); 

String id = user.getUserId(); 

Respuesta

11

En realidad, he encontrado esta información en Google y la conclusión es que no deben ser utilizados públicamente.

De Google:

Acceso a la información de cuenta

Mientras que un usuario ha iniciado sesión en una aplicación, la aplicación puede acceder a la dirección de correo electrónico de la cuenta o el identificador OpenID para cada petición del usuario hace a la aplicación. La aplicación también puede acceder a una identificación de usuario que identifica al usuario de manera única, incluso si el usuario cambia la dirección de correo electrónico de su cuenta.

La aplicación también puede determinar si el usuario actual es un administrador (un "desarrollador") de la aplicación. Puede usar esta característica para crear funciones administrativas para la aplicación, incluso si no autentica a otros usuarios. Las API Go, Java y Python facilitan la configuración de las URL como "solo administrador".

Nota: Todos los usuarios tienen el mismo ID de usuario para todas las aplicaciones de App Engine. Si su aplicación usa la ID de usuario en datos públicos, como incluirla en un parámetro de URL, debe usar un algoritmo hash con un valor "sal" agregado para ocultar la ID. La exposición de identificadores sin procesar podría permitir que alguien asocie la actividad de un usuario en una aplicación con la de otra, u obtener la dirección de correo electrónico del usuario al obligar al usuario a iniciar sesión en otra aplicación.

Link to page

Cuestiones relacionadas