Làm cách nào để đăng nhập vào Drupal bằng tên người dùng và mật khẩu Google Apps?


8

Chúng tôi đang tìm cách sử dụng người dùng có thể đăng nhập vào trang web Drupal bằng tên người dùng và mật khẩu tài khoản Google Apps của họ. Chúng tôi sử dụng 'Google Apps for Education' và chúng tôi không muốn duy trì tên người dùng và mật khẩu riêng cho trang web Drupal của chúng tôi.

Chúng tôi cũng muốn giới hạn quyền truy cập đối với một số người dùng có tài khoản Google Apps. Một cái gì đó như lọc hoặc danh sách tài khoản được chấp thuận trước. Và, tài khoản của người dùng nên được tạo tự động khi họ đăng nhập lần đầu tiên và họ không cần điền bất kỳ thông tin tài khoản bổ sung nào vào Drupal, tài khoản này phải được lấy trực tiếp từ tài khoản Google Apps.

Có mô-đun nào cho Drupal 7 cung cấp chức năng này không? Tôi đã thử OAuth, Loginza.ru, OpenID, v.v. như cách tiếp cận và đây không phải là những gì chúng tôi đang tìm kiếm.

Nếu không có mô-đun như vậy, tôi sẽ tiến hành viết mô-đun tùy chỉnh như thế nào?

Câu trả lời:


4

Để tích hợp trang web Drupal 7 của bạn với Google Apps, bạn cần:

  1. Kích hoạt mô-đun OpenID trên trang web drupal của bạn
  2. Kích hoạt Dịch vụ đăng nhập được liên kết bằng bảng điều khiển Google Apps của bạn tại http://www.google.com/a/cpanel/yourdomain.com/setupIdp
  3. Thêm tiêu đề X-XRDS-Location tại yourdomain.com/openid Ví dụ: nếu yourdomain.com là trang web PHP, hãy tải lên trang này dưới dạng /openid/index.php

    <?php
    header('X-XRDS-Location: https://www.google.com/accounts/o8/site-xrds?ns=2&hd=yourdomain.com');
    ?>
    
  4. Chuyển đến trang đăng nhập trang web drupal của bạn. Bạn sẽ thấy một liên kết 'đăng nhập mới với id mở. Nhấp vào nó. Nhập: https://google.com/accounts/o8/site-xrds?hd=yourdomain.com và nhấp vào gửi
  5. Lần đầu tiên bạn làm điều này, bạn sẽ được hỏi nếu bạn muốn cho phép trang web của bạn xác thực. Nhấp vào có.
  6. Sau đó, nếu bạn cố gắng đăng nhập bằng URL trên và bạn đã đăng nhập vào Google Apps, bạn sẽ đăng nhập trực tiếp.

3

Bạn không cần phải viết một mô-đun tùy chỉnh từ đầu, có rất nhiều mã để bạn bắt đầu.


1
Đáng buồn thay, hỗ trợ trực tiếp đã đi vào Drupal 7 ... và sau đó đã bị xóa sau: drupal.org/node/727650 - bạn có thể tìm thấy công việc hữu ích ở đó.
rfay

2

Tôi đã chơi với mô-đun Janrain Engage (trước đây là RPX) bằng dịch vụ janrain.com. Giá cả khá thấp nếu bạn không có lượng người dùng lớn. Đối với Google, nó sẽ cung cấp cho bạn email và tên đầy đủ của người dùng (https://rpxnow.com/docs/providers)


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.