Satellizer : le module d'authentification pour AngularJS

Suite d'une précédente news sur l'authentification via token pour AngularJS. Mais contrairement à la news précédente consacrée à JWT, il est question ici du module Satellizer (qui utilise également JWT). Ce module permet d'ajouter à votre application angular une authentification via les providers les plus répendus (Google, Facebook, LinkedIn, Twitter) ainsi que l'authentification via email/password. Comme si cela ne suffisait pas, n'importe quel provider OAuth 1.0 et OAuth 2.0 peut etre utilisé, en passant en paramètre un objet JavaScript contenant les informations requises par le provider.

Installation

# Bower
bower install satellizer --save

# ou bien NPM
npm install satellizer --save  

Configuration

angular.module('MyApp', ['satellizer'])  
  .config(function($authProvider) { 

    $authProvider.facebook({
      clientId: '123456789',
    });   

    $authProvider.twitter({
      url: '/auth/twitter'
    });
  });

Utilisation (côté controller)

angular.module('MyApp')  
  .controller('LoginCtrl', function($scope, $auth) {

    $scope.authenticate = function(provider) {
      $auth.authenticate(provider);
    };

  });

Utilisation (côté view)

<button ng-click="authenticate('facebook')">Sign in with Facebook</button>  
<button ng-click="authenticate('twitter')">Sign in with Twitter</button>  

Plus de détails et d'exemples sur github