Como armazenar corretamente minhas APIs do Symfony2?

Estou fazendo APIs clássicas RESTfull stateless no Symfony2: users / apps recebem um token de autenticação na API de autenticação e dão a todas as outras APIs para serem registradas e postar dados / acesso protegido / privado / dados pessoais em outras APIs.

Eu tenho agora três preocupações em relação a este fluxo de trabalho e cache:

Como usar o cache HTTP para minhas APIs 'estáticas' (que sempre entregam o mesmo conteúdo, independentemente do usuário logado e seu token), assumindo que diferentes tokens seriam passados ​​na URL por usuários diferentes para a mesma API, para que a URL nunca seja o mesmo? Como usar o cache compartilhado HTTP então?

Eu tenho APIs para o mesmo url que produzem uma saída diferente, em relação aos direitos de usuário registrados (basicamente tenho quatro níveis de direitos diferentes). A pergunta é: é um bom padrão? Não é melhor ter quatro URLs diferentes, uma para cada direito, que eu possa armazenar em cache? Se não, como implementar um cache adequado?

O cache HTTP compartilhado está funcionando em HTTPS? Se não, que tipo de cache devo implementar e como?

Obrigado por suas respostas e luzes sobre isso.

questionAnswers(1)

yourAnswerToTheQuestion