Implementación de una autenticación API RESTful utilizando tokens (Yii / Yii2)

Estoy creando una API en Yii 1.x que se usará con una aplicación móvil. Parte del proceso implica un inicio de sesión (con un nombre de usuario y contraseña) utilizando la siguiente solicitud JSON a continuación:

// Solicitud enviada con nombre de usuario y contraseña

{
"request" : {
    "model" : {
        "username" : "bobbysmith",
        "password" : "mystrongpassword"
    }
  }
}

// Si inició sesión correctamente, devuelva la siguiente respuesta

{
"response": {
    "code": 200,
    "message": "OK",
    "model": {
        "timestamp": 1408109484,
        "token": "633uq4t0qdtd1mdllnv2h1vs32"
    }
 }
}

Este token es bastante importante: una vez que un usuario inicia sesión en la aplicación, me gustaría que tenga acceso a otras páginas que requieren que inicien sesión. Quiero que la aplicación móvil almacene este token y, si es el mismo633uq4t0qdtd1mdllnv2h1vs32 el token se encuentra dentro de cualquier solicitud posterior, lo aceptará como una solicitud autenticada (para este usuario 'bobbysmith').

No estoy seguro de cuál es la mejor manera de hacerlo, he investigado un poco y puedo mencionar aAuth varias veces, junto con la autenticación básica a través de HTTPS.

En pocas palabras, esto ...

En la página de inicio de la aplicación móvil, el usuario inicia sesión correctamente con su nombre de usuario y contraseña y esto envía una solicitud a la API.Esto devuelve una respuesta exitosa (mostrada arriba) con la marca de tiempo actual y el token más importante.El mismo usuario va a otra página / vista de la aplicación donde este token es a) requerido yb) si coincide, autentica a ese usuario (por ejemplo, para que puedan editar esa cuenta, etc.)Una vez que el usuario hace clic en 'Cerrar sesión', este token se elimina (y ya puede acceder a Mi cuenta, etc.), esencialmente un sistema de autenticación basado en token.

¿Alguien puede explicar la mejor manera de lograr esto? Avíseme si lo que he declarado no es 100% claro y le proporcionaré más información.

Mientras estoy usando PHP, una solución Yii 1.x es ideal, ya que eso es lo que se construye con la API actual.

En pocas palabras, la aplicación garantiza que cada solicitud al servidor incluya un token en la carga útil o el encabezado para que este token pueda recuperarse encada publicación posterior, una vez desconectado, este token simplemente se elimina O se establece en nulo / vacío

Respuestas a la pregunta(3)

Su respuesta a la pregunta