Tengo un proyecto en el que el front-end es en flash/flex y el backend en PHP (amfPHP). En problema es que estará enfocado tanto a dispositivos móviles como al escritorio y tengo dudas en cuanto a cómo manejar la seguridad de cara al usuario.
Hasta ahora, para cosas más o menos simples creaba una llave_temporal en cada login, luego enviaba el usuario y la llave temporal en cada acción que realizaba en el servidor. Con esto evitaba que se molestasen dos personas haciendo cambios (usando la misma cuenta!), por ejemplo alguien se conecta desde un PC y se pone a modificar una noticia, tarda mucho y otra persona entra desde otro pc y la modifica antes, entonces la primera persona no podría terminar de modificarla porque la llave temporal ya no tendría validez (es un ejemplo malo, pero lo mismo sirve).
Ahora digamos que me pongo a ver mi cuenta desde el móvil, y luego desde el pc, y vuelta al móvil... perdería la llave temporal y tendría que volver a "entrar al sistema".
Ahora no sé qué hacer realmente, no sé si usar sesiones o qué hacer, porque enviar el usuario y clave en todas las conexiones me da un poco de mal rollo. Por otro lado no puedo pedir únicamente el usuario, porque lo que se quiere es facilitar parte de la API al público, por ejemplo
getUsersPhotos(usuario);
pero si el usuario tuviera fotos privadas que sólo pudiera ver él
getMyPhotos(usuario);
pero alguien podría "hackear" la API y obtener las fotos privadas de otros usuarios
Así que no sé si iniciar una sesión o hacer las conexiones de la forma
getMyPhotos(usuario,password);
¿alguna idea?