Kết nối Gmail với Odoo bằng Google OAuth

Odoo tương thích với OAuth của Google dành cho Gmail. Để có thể gửi email một cách bảo mật từ miền tùy chỉnh, bạn chỉ cần cấu hình một vài thiết lập trên nền tảng Google Workspace cũng như trong back end của cơ sở dữ liệu Odoo. Cấu hình này có thể hoạt động với cả địa chỉ email cá nhân hoặc địa chỉ email được tạo từ một miền riêng.

Mẹo

Để biết thêm thông tin, hãy truy cập Google's documentation về cách thiết lập OAuth.

Cài đặt trong Google

Tạo dự án mới

Để bắt đầu, hãy truy cập Google API Console. Đăng nhập bằng tài khoản Google Workspace của bạn nếu có, nếu không hãy đăng nhập bằng tài khoản Gmail cá nhân (điều này phải trùng khớp với địa chỉ email bạn muốn cấu hình trong Odoo).

Sau đó, nhấp vào Create Project, nằm ở phía bên phải của OAuth consent screen. Nếu một dự án đã được tạo trong tài khoản này, tùy chọn New Project sẽ được đặt ở góc trên bên phải, dưới menu thả xuống Select a project.

Trên màn hình New Project, đổi tên Project name thành Odoo và duyệt để chọn Location. Đặt Locationtổ chức Google Workspace. Nếu bạn đang sử dụng tài khoản Gmail cá nhân, thì để LocationNo Organization.

Tên dự án và vị trí cho Google OAuth

Nhấn vào Create để hoàn thành bước này.

Chỉnh sửa đăng ký ứng dụng

Tiếp theo, chúng ta sẽ cấu hình việc đăng ký ứng dụng cho dự án.

Trong bước OAuth consent screen, dưới phần App information, nhập Odoo vào trường App name. Chọn địa chỉ email của tổ chức trong trường email User support.

Tiếp theo, trong App Domain ‣ Authorized domains, nhấp vào Add Domain và nhập odoo.com.

Sau đó, dưới phần Developer contact information, nhập địa chỉ email của tổ chức. Google sử dụng địa chỉ email này để thông báo cho tổ chức về bất kỳ thay đổi nào đối với dự án của bạn.

Tiếp theo, nhấn nút Save and Continue. Sau đó, bỏ qua trang Scopes bằng cách cuộn xuống cuối và nhấn Save and Continue.

Nếu tiếp tục ở chế độ kiểm thử (External), thêm các địa chỉ email đang được cấu hình trong bước Test users bằng cách nhấp vào Add Users, sau đó nhấn nút Save and Continue. Một bản tóm tắt đăng ký ứng dụng sẽ xuất hiện.

Cuối cùng, cuộn xuống cuối trang và nhấp vào Back to Dashboard để hoàn thành việc thiết lập dự án.

Tạo thông tin đăng nhập

Sau khi dự án đã được thiết lập, cần tạo thông tin xác thực, bao gồm Client IDClient Secret. Đầu tiên, nhấp vào Credentials trong menu thanh bên trái.

Sau đó, nhấn vào Create Credentials trong menu trên cùng và chọn OAuth client ID từ menu thả xuống.

  • Dưới Application Type, chọn Web Application từ menu thả xuống.

  • Trong trường Name, nhập Odoo

  • Dưới nhãn Authorized redirect URIs, nhấn nút ADD URI, rồi nhập https://yourdbname.odoo.com/google_gmail/confirm vào trường URIs 1. Đảm bảo thay thế phần yourdbname của URL bằng tên cơ sở dữ liệu Odoo thực tế.

  • Tiếp theo, nhấn vào Create để tạo một OAuth Client IDClient Secret. Cuối cùng, sao chép từng giá trị đã tạo ra để sử dụng sau này khi cấu hình trong Odoo, và sau đó điều hướng đến cơ sở dữ liệu Odoo.

Client ID và Client Secret cho Google OAuth.

Thiết lập trong Odoo

Nhập thông tin đăng nhập Google

Đầu tiên, mở Odoo và chuyển đến mô-đun Apps. Sau đó, xóa bộ lọc Apps khỏi thanh tìm kiếm và nhập Google. Cài đặt mô-đun có tên Google Gmail.

Tiếp theo, đi đến Cài đặt ‣ Cài đặt chung, và trong phần Thảo luận, đảm bảo rằng hộp kiểm cho Máy chủ email tùy chỉnh hoặc Máy chủ email bên ngoài được chọn. Thao tác này sẽ hiển thị tùy chọn mới cho Thông tin xác thực Gmail hoặc Sử dụng máy chủ Gmail. Sau đó, sao chép và dán giá trị tương ứng vào các trường ID máy kháchMã bí mật máy khách rồi Lưu cài đặt.

Cấu hình máy chủ email gửi đi

Để cấu hình tài khoản Gmail bên ngoài, quay lại đầu của cài đặt Custom Email Servers và sau đó nhấp vào liên kết Outgoing Email Servers.

Cấu hình máy chủ Email gửi đi trong Odoo.

Sau đó, nhấn New hoặc Create để tạo một máy chủ email mới, và điền vào Name, DescriptionUsername (nếu cần).

Tiếp theo, nhấp vào Gmail OAuth Authentication hoặc Gmail (dưới phần Authenticate with hoặc Connection). Cuối cùng, nhấp vào Connect your Gmail Account.

Một cửa sổ mới có nhãn Google mở ra để hoàn thành quy trình ủy quyền. Chọn địa chỉ email thích hợp đang được cấu hình trong Odoo.

Nếu địa chỉ email là tài khoản cá nhân, sẽ xuất hiện một bước bổ sung, vì vậy nhấn Continue để cho phép xác minh và kết nối tài khoản Gmail với Odoo.

Sau đó, cho phép Odoo truy cập tài khoản Google bằng cách nhấn vào Continue hoặc Allow. Tiếp theo, trang sẽ chuyển lại về máy chủ email gửi đi mới được cấu hình trong Odoo. Cấu hình tự động tải token vào Odoo, và một thẻ hiển thị Gmail Token Valid xuất hiện màu xanh lá cây.

Cấu hình máy chủ Email gửi đi trong Odoo.

Cuối cùng, Test the Connection. Một thông báo xác nhận sẽ xuất hiện. Cơ sở dữ liệu Odoo hiện có thể gửi email an toàn, bảo mật qua Google bằng xác thực OAuth.

Câu hỏi thường gặp về Google OAuth

Trạng thái xuất bản Sản xuất vs Kiểm thử

Việc chọn Production làm Publishing Status (thay vì Testing) sẽ hiển thị thông báo cảnh báo sau:

OAuth bị giới hạn ở 100 lần đăng nhập phạm vi nhạy cảm

Để khắc phục cảnh báo này, hãy truy cập Google API Platform. Nếu Publishing statusIn Production, nhấp vào Back to Testing để khắc phục vấn đề.

Chưa có người dùng thử được thêm

Nếu không có người dùng thử nào được thêm vào màn hình consent OAuth, thì sẽ xuất hiện lỗi 403 access denied.

Lỗi 403 Truy cập bị từ chối.

Để khắc phục lỗi này, trở lại OAuth consent screen trong APIs & Services và thêm người dùng thử vào ứng dụng. Thêm email mà bạn đang cấu hình trong Odoo.

Mô-đun Gmail chưa được cập nhật

Nếu mô-đun Google Gmail trong Odoo chưa được cập nhật lên phiên bản mới nhất, thì một thông báo lỗi Forbidden sẽ xuất hiện.

Bị từ chối, bạn không có quyền truy cập tài nguyên đã yêu cầu.

Để khắc phục lỗi này, vào mô-đun Apps và xóa các từ khóa tìm kiếm. Sau đó, tìm kiếm Gmail hoặc Google và nâng cấp mô-đun Google Gmail. Cuối cùng, nhấp vào ba dấu chấm ở góc trên bên phải của mô-đun và chọn Upgrade.

Loại ứng dụng

Khi tạo thông tin xác thực (OAuth Client IDClient Secret), nếu Desktop App được chọn cho Application Type, sẽ xuất hiện Authorization Error.

Lỗi 400 Redirect URI Mismatch.

Để khắc phục lỗi này, xóa các thông tin xác thực đã tạo và tạo thông tin xác thực mới, chọn Web Application cho Application Type. Sau đó, dưới mục Authorized redirect URIs, nhấp vào ADD URI và nhập: https://yourdbname.odoo.com/google_gmail/confirm vào trường, chắc chắn thay thế yourdbname trong URL bằng tên cơ sở dữ liệu Odoo.