Authentifizierungsservice auth0.com

https://auth0.com/

  • Scheint ein interessanter Dienst zu sein.
  • Könnte einem die komplette Benutzer-* abnehmen.
  • Es gibt z.B.
    • Client-Stubs und Anleitungen für jede Menge Sprachen und Dienste.
    • Benutzerverwaltung
    • Authentifizierung und Authorisierung
    • REST-Api
  • Freemium-Preismodell
  • Als Nutzer (Entwickler) muss man dann nur noch den entsprechenden Client-Code einbinden.
  • Man könnte also die Authentifizierung komplette darüber laufen lassen und in der Web-Oberfläche die Benutzer zu Gruppen zuordnen. Fertig.

Ich habe ihn testweise mal in Apache eingebunden und die Auth dort machen lassen.

  • Apache-Module (leider (noch!) nicht in ubuntu) vorkompiliert runtergeladen
    und dann a2enmod auth_openidc
  • in /etc/apache2/mods-available/auth_openidc.confanhand der Schritt-für-Schritt-Anleitung auf der Webseite:
    OIDCProviderIssuer https://ed4u.eu.auth0.com
    OIDCProviderAuthorizationEndpoint https://ed4u.eu.auth0.com/authorize
    
    OIDCProviderTokenEndpoint https://ed4u.eu.auth0.com/oauth/token
    OIDCProviderTokenEndpointAuth client_secret_post
    OIDCProviderUserInfoEndpoint https://ed4u.eu.auth0.com/userinfo
    
    OIDCClientID xxxxxxx
    OIDCClientSecret yyyyyyy
    
    OIDCScope "openid name email"
    OIDCRedirectURI https://backend.steinkopf.net/idtest/
    OIDCCryptoPassphrase <zzzzzzz>
    OIDCCookiePath /idtest/
    
  • Dann in einer Test-Apache-Host-Config etwas mit der Auth rumgespielt:
    <Directory "/bla/blabla">
        Options -Indexes
        AuthType openid-connect
        #Require valid-user
        Require claim folder:steinkopf
        #LogLevel debug
    </Directory>
    
  • der claim folder:steinkopf entsteht in einer “Rule”, welche eine Funktion enthält:
    function (user, context, callback) {
      if (user.email.indexOf('steinkopf') >= 0) {
          user.folder = 'steinkopf';
      }
      else {
        user.folder = 'nofolder';
      }
      return callback(null, user, context);
    }
    

    Zum Ausprobieren, wird hier jeder, der in seiner Google-ID “steinkopf” enthalten hat, als “steinkopf” betrachtet.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert