Wie melde ich mich mit dem Google Apps-Benutzernamen und -Kennwort bei Drupal an?

8

Wir suchen nach einer Möglichkeit, mit der sich Benutzer mit ihrem Benutzernamen und Passwort für das Google Apps-Konto bei der Drupal-Website anmelden können. Wir verwenden "Google Apps for Education" und möchten keinen separaten Benutzernamen und kein separates Passwort für unsere Drupal-Website verwalten.

Wir möchten auch den Zugriff auf bestimmte Nutzer mit Google Apps-Konten beschränken. So etwas wie Filtern oder vorab genehmigte Kontoliste. Das Benutzerkonto sollte automatisch erstellt werden, wenn sie sich zum ersten Mal anmelden. Sie sollten keine zusätzlichen Kontoinformationen in Drupal eingeben müssen. Es sollte direkt aus dem Google Apps-Konto abgerufen werden.

Gibt es ein Modul für Drupal 7, das diese Funktionalität bietet? Ich habe bereits OAuth, Loginza.ru, OpenID usw. wie Ansätze ausprobiert und diese sind nicht das, wonach wir suchen.

Wenn es kein solches Modul gibt, wie soll ich mit dem Schreiben eines benutzerdefinierten Moduls für dasselbe fortfahren?

Sneha H.
quelle

Antworten:

4

Um Ihre Drupal 7-Website in Google Apps zu integrieren, müssen Sie:

  1. Aktivieren Sie das OpenID-Modul auf Ihrer Drupal-Site
  2. Aktivieren Sie den Verbundanmeldedienst über Ihr Google Apps-Kontrollfeld unter http://www.google.com/a/cpanel/yourdomain.com/SetupIdp
  3. Hinzufügen eines X-XRDS-Location-Headers unter yourdomain.com/openid Wenn yourdomain.com beispielsweise eine PHP-Site ist, laden Sie diesen als /openid/index.php hoch

    <?php
    header('X-XRDS-Location: https://www.google.com/accounts/o8/site-xrds?ns=2&hd=yourdomain.com');
    ?>
  4. Gehen Sie zur Anmeldeseite Ihrer Drupal-Site. Sie sehen einen neuen Link "Login mit offener ID". Klick es. Geben Sie Folgendes ein: https://google.com/accounts/o8/site-xrds?hd=yourdomain.com und klicken Sie auf Senden
  5. Wenn Sie dies zum ersten Mal tun, werden Sie gefragt, ob Sie der Authentifizierung Ihrer Site erlauben möchten. Klicken Sie auf Ja.
  6. Wenn Sie anschließend versuchen, sich mit der oben genannten URL anzumelden und bei Google Apps angemeldet sind, werden Sie direkt angemeldet.
Nic Rodgers
quelle
3

Sie sollten kein benutzerdefiniertes Modul von Grund auf neu schreiben müssen. Es gibt genügend Code, um loszulegen.

ipwa
quelle
1
Leider ging die direkte Unterstützung in Drupal 7 ... und wurde später entfernt: drupal.org/node/727650 - dort finden Sie möglicherweise nützliche Arbeit.
Rfay
2

Ich habe mit dem Janrain Engage-Modul (ehemals RPX) über den Dienst janrain.com gespielt. Die Preise sind ziemlich niedrig, wenn Sie keine massive Benutzerbasis haben. Bei Google erhalten Sie die E-Mail-Adresse und den vollständigen Namen des Nutzers (https://rpxnow.com/docs/providers).

uwe
quelle
1

Für alle, die einen einfachen Anwendungsfall haben (Benutzer sich einfach über Google anmelden lassen), sehen Sie sich das Modul Google Identity Toolkit (GITkit) an :

Mit diesem Modul können sich Benutzer mit ihren Google-Anmeldeinformationen über die Google Identity Toolkit-API, die unter http://code.google.com/apis/identitytoolkit verfügbar ist, auf einer Drupal-Website anmelden / registrieren

Peter W.
quelle