¿Cómo obtener la información del usuario autenticado y su uso en todos los controladores y servicios?

Estoy usando angularFireAuth y quiero recuperar la información del usuario registrado y usarlo en todos los controladores o servicios cuando la aplicación es inicial.

Actualmente, utilicé esto en todos los controladores pero tengo algún problema.

$scope.$on("angularFireAuth:login", function(evt, user){ 
  console.log(user);
});

La devolución de llamada no llamará si no es una carga de página completa o el retorno es nulo cuando se inicia la aplicación.

Necesito algunos consejos sobre cómo puedo devolver la información del usuario autenticado para poder usarla cuando la aplicación es inicial y en todos los controladores y servicios.

Ejemplo

Cuando en controlador o servicios

$scope.auth.user.id devolverá la identificación del usuario$scope.auth.user.name devolverá el nombre del usuarioetc

Respuestas a la pregunta(2)

Su respuesta a la pregunta