Bỏ qua menu và tới nội dung chính
Hướng dẫn

Kết nối ChatGPT Plus với 9Router qua OAuth: Cách làm và rủi ro

19 phút 259
Kết nối ChatGPT Plus với 9Router qua OAuth

Kết nối ChatGPT Plus với 9Router qua OAuth đang được nhiều người quan tâm vì muốn dùng hạn mức Codex của tài khoản ChatGPT trong các công cụ hỗ trợ lập trình hoặc một endpoint OpenAI-compatible. Tuy nhiên, cách gọi “kết nối ChatGPT Plus với 9Router” dễ gây hiểu nhầm: ChatGPT Plus không tự biến thành tài khoản OpenAI API, cũng không tạo sẵn API credit.

Về bản chất, 9Router đăng nhập một tài khoản OpenAI qua luồng OAuth dành cho Codex, sau đó chuyển tiếp request đến endpoint Codex của ChatGPT. Cách làm này có thể hoạt động, nhưng 9Router hiện hiển thị cảnh báo rằng việc dùng session subscription/OAuth qua proxy hoặc router không được cấp phép chính thức và tài khoản có thể bị hạn chế. Vì vậy, chỉ nên thử khi bạn hiểu rõ rủi ro tài khoản và dữ liệu.

ChatGPT Plus và 9Router được kết nối theo cách nào?

Luồng này gồm ba thành phần: tài khoản ChatGPT có quyền sử dụng Codex, 9Router làm lớp trung gian, và ứng dụng phía client gọi vào endpoint của 9Router. Người dùng không lấy API key từ ChatGPT Plus. Thay vào đó, 9Router tạo một kết nối OAuth cho nhà cung cấp OpenAI Codex.

Trong giao diện 9Router, nhà cung cấp này được ghi là OpenAI Codex, thuộc nhóm OAuth Providers. Cấu hình hiện tại sử dụng trang ủy quyền của auth.openai.com, scope gồm openid, profile, emailoffline_access. Sau khi hoàn tất đăng nhập, 9Router lưu connection để sử dụng token và refresh token theo cơ chế của OAuth.

Ở phía OpenAI, tài liệu xác thực Codex xác nhận Codex CLI, IDE extension và ứng dụng ChatGPT desktop hỗ trợ đăng nhập bằng ChatGPT thông qua trình duyệt. Sau khi người dùng hoàn tất đăng nhập, trình duyệt trả thông tin xác thực về client Codex. Đây là nền tảng của flow được 9Router sử dụng, không phải API key flow thông thường. Nói ngắn gọn, kết nối ChatGPT Plus với 9Router là kết nối quyền Codex qua OAuth, không phải nhận API credit.

Luồng kết nối ChatGPT Plus với 9Router
Luồng OAuth từ tài khoản ChatGPT đến 9Router và ứng dụng client.

Điều kiện cần chuẩn bị trước khi kết nối

  • Một tài khoản ChatGPT có quyền dùng Codex; 9Router hiện ghi chú rằng tính năng hình ảnh yêu cầu tài khoản ChatGPT Plus hoặc cao hơn.
  • 9Router đã được cài đặt và mở được dashboard quản trị.
  • Thiết bị chạy 9Router có trình duyệt để hoàn tất đăng nhập OAuth.
  • Một ứng dụng client có thể gọi endpoint OpenAI-compatible của 9Router.
  • Thời gian để kiểm tra chính sách tài khoản, phạm vi dữ liệu và rủi ro trước khi cấp quyền.
Chuẩn bị kết nối ChatGPT Plus với 9Router
Các thành phần cần chuẩn bị trước khi tạo connection OAuth.

ChatGPT Plus không đồng nghĩa với OpenAI API billing. Nếu bạn cần gọi api.openai.com bằng API key, hãy tạo API key và cấu hình thanh toán ở nền tảng API của OpenAI theo quy định riêng. OAuth Codex trong 9Router là một cơ chế khác, gắn với quyền và hạn mức của tài khoản ChatGPT.

Cách kết nối ChatGPT Plus với 9Router qua OAuth

Quy trình kết nối ChatGPT Plus với 9Router gồm bốn bước: mở provider OpenAI Codex, tạo connection OAuth, kiểm tra connection đã lưu và chạy test trước khi dùng. Bạn không cần trích xuất cookie hoặc tự sao chép access token.

Các bước kết nối OAuth trong 9Router
Bốn bước tạo và kiểm tra connection OpenAI Codex.

Bước 1: Mở trang Providers trong 9Router

Đăng nhập dashboard 9Router, mở mục Providers, sau đó tìm nhóm OAuth Providers. Chọn OpenAI Codex. Không chọn một provider OpenAI-compatible tự tạo nếu mục tiêu của bạn là đăng nhập bằng tài khoản ChatGPT.

Thêm Provider trên 9Router
Thêm Provider trên 9Router

Trang OpenAI Codex sẽ hiển thị số lượng connections hiện có, danh sách model và nút Add. Trong giao diện đang được kiểm chứng, 9Router cũng hiển thị Risk Notice ngay dưới tên provider. Hãy đọc cảnh báo này trước khi tiếp tục, thay vì bỏ qua như một thông báo trang trí.

Bước 2: Tạo connection mới

+ Nhấn Add Connection trong khu vực Connections. 9Router sẽ khởi động flow OAuth và đưa bạn tới trang đăng nhập của OpenAI.

Thêm connection mới với OpenAI trên 9Router
Thêm connection mới với OpenAI trên 9Router

+ Sau đó, một popup đăng nhập sẽ xuất hiện, nếu bạn đã từng đăng nhập ChatGPT Plus trên máy rồi, popup sẽ hiện các tài khoản ChatGPT mà bạn có, bạn sẽ chọn vào và thực hiện bước tiếp theo. Nhưng nếu chưa từng đăng nhập tài khoản nào, bạn sẽ cần đăng nhập lần đầu.

Connect với Chatgpt qua Oauth của OpenAI
Connect với Chatgpt qua Oauth của OpenAI

+ Nếu bạn có bật xác thực 2 bước (2FA) cho tài khoản ChatGPT của mình, hệ thống cũng sẽ yêu cầu bạn nhập One Time Password (OTP) mới có thể tiếp tục.

Yêu cầu nhập OTP để tiếp tục
Yêu cầu nhập OTP để tiếp tục

Hoàn tất đăng nhập và màn hình consent nếu được hiển thị. Chỉ cấp quyền khi bạn hiểu ứng dụng nào đang nhận quyền, quyền đó dùng vào mục đích gì và token được lưu ở đâu. Nếu trình duyệt hỏi cho phép mở liên kết hoặc quay lại ứng dụng cục bộ, hãy xác nhận đúng phiên 9Router mà bạn đang tự quản lý.

Open AI yêu cầu cấp quyền
Open AI yêu cầu cấp quyền

Sau khi cấp quyền thành công, nếu Popup không tự tắt hoặc đến bước tiếp theo, thì bạn có thể tiến hành copy link address có dạng http://localhost:20128/callback?code… để paste vào ô ở Step 2 trên popup Connect OpenAI Codex, sau đó bấm vào Connect là hoàn tất việc kết nối ChatGPT Plus với 9Router thông qua Oauth.

Copy link localhost trên popup
Copy link localhost trên popup

Lưu ý: Đối với các tài khoản chưa từng liên kết số điện thoại, OpenAI sẽ yêu cầu bạn bind với một số điện thoại bất kỳ dùng nhận OTP để xác minh. Bạn có thể sử dụng số điện thoại cá nhân nếu chỉ có 1 tài khoản ChatGPT, nhưng trường hợp bạn có nhiều tài khoản ChatGPT, nghĩa là bạn sẽ cần nhiều số điện thoại khác nhau cho việc xác minh. Do đó mình có 2 phương án thay thế, đầu tiên bạn có thể dùng số điện thoại có đăng ký Whatsapp để nhận OTP qua Whatsapp (với cách này, bạn có thể liên kết với 3 – 6 tài khoản ChatGPT), hoặc bạn có thể thuê số để xác minh tài khoản, ở đây mình hay dùng của ViOTPVới ViOTP, bạn có 2 lựa chọn một là thuê số Vinaphone với dịch vụ ChatGPT/OpenAI để xác minh cho 1 tài khoản với giá 2,900đ hoặc là bạn có thể thuê số nhà mạng bất kỳ với dịch vụ Whatsapp để tạo Whatsapp để liên kết nhiều tài khoản hơn với giá 6,500đ.

ViOTP Whatsapp
ViOTP Whatsapp
ViOTP OpenAI
ViOTP OpenAI

Bước 3: Kiểm tra connection đã được lưu

Sau khi OAuth hoàn tất, quay lại trang OpenAI Codex trong 9Router. Một connection hợp lệ thường có trạng thái active, loại xác thực OAuth và tài khoản được che một phần hoặc hiển thị định danh theo cách dashboard hỗ trợ. Không cần và không nên copy access token, refresh token hay nội dung cookie ra ngoài dashboard.

Kiểm tra để chắc chắn ChatGPT đã được thêm thành công vào 9Router
Kiểm tra để chắc chắn ChatGPT đã được thêm thành công vào 9Router

Nếu connection chưa xuất hiện, hãy kiểm tra cửa sổ trình duyệt có bị chặn, callback có hoàn tất hay không và log 9Router có báo lỗi state, code verifier hoặc token exchange. Không thử bằng cách dán cookie ChatGPT vào form API. Cookie phiên không phải OAuth credential và việc chia sẻ cookie làm tăng đáng kể rủi ro chiếm quyền tài khoản.

Bước 4: Test kết nối trước khi đưa vào sử dụng

Trong trang OpenAI Codex, dùng nút Test Connection One-by-One để kiểm tra từng connection. Nếu 9Router có nhiều connection, nên test riêng từng tài khoản thay vì chỉ nhìn trạng thái active. Một connection có thể còn tồn tại trong danh sách nhưng token đã hết hạn, bị thu hồi hoặc không còn quyền gọi endpoint.

Chỉ khi test thành công mới bật connection cho combo hoặc endpoint đang dùng. Với nhiều tài khoản, 9Router có thể chạy Round Robin hoặc Sticky. Round Robin phân phối request giữa các connection; Sticky giữ request theo một connection cố định. Hai chế độ này không làm tăng quyền của tài khoản và cũng không loại bỏ giới hạn từ phía OpenAI.

Bước 5: Tạo combo xoay vòng nếu sử dụng nhiều tài khoản ChatGPT

Vì Codex hiện tại đã giới hạn theo tuần mà không phải là 5 giờ như trước đây, nên việc sử dụng nhiều tài khoản ChatGPT để bào token sẽ tối ưu hơn, dùng Combo cho nhiều tài khoản, 9Router sẽ tự động xoay tua các tài khoản ChatGPT của bạn theo từng account giúp tối ưu hơn trong việc bào token. Để làm được điều này, bạn chỉ cần vào phần Combo ở menu bên trái và bấm vào Create Combo để tạo combo mới.

Tạo combo cho 9Router
Tạo combo cho 9Router

Tại đây, bạn cần tạo một tên combo, tên combo này cũng sẽ là tên model mà bạn sẽ sử dụng khi add vào các Agent AI, ở đây mình tạm đặt là mycombo, sau đó bấm vào Add model để chọn model mà bạn muốn sử dụng.

Tạo tên Combo và thêm model cho Combo
Tạo tên Combo và thêm model cho Combo

Vì mình dùng model GPT 5.6 Sol, nên mình sẽ chọn model GPT 5.6 Sol, sau đó bấm vào close để quay trở lại bảng tạ combo.

Chọn Model muốn sử dụng để add cho combo
Chọn Model muốn sử dụng để add cho combo

Sau khi quay lại bảng Create Combo, hãy bấm vào Create để hoàn tất tạo Combo, lưu ý bạn có thể chọn nhiều Model khác nhau tùy vào nhu cầu của bạn.

Bấm Create để hoàn tất tạo Combo
Bấm Create để hoàn tất tạo Combo

Sau khi tạo xong, bạn cần làm một bước nữa là chọn vào phần Round Robin để 9Router xoay các tài khoản ChatGPT của bạn sau mỗi request.

Chọn Round Robin để 9Router mặc định xoay tua các tài khoản ChatGPT
Chọn Round Robin để 9Router mặc định xoay tua các tài khoản ChatGPT

Cấu hình ứng dụng gọi qua endpoint 9Router

Sau khi connection OAuth hoạt động, mở mục Endpoint & Key hoặc Combos trong 9Router để lấy base URL và tạo API key nội bộ của router. Base URL thường có dạng:
http://127.0.0.1:20128/v1
Đây là địa chỉ dành cho ứng dụng chạy cùng máy với 9Router. Nếu client chạy trên máy khác, không nên mở cổng HTTP này trực tiếp ra Internet. Hãy dùng mạng riêng, firewall, reverse proxy HTTPS và allowlist IP; API key của 9Router cũng phải được giữ như một secret.

Trong client OpenAI-compatible, điền ba trường cơ bản. Nếu đang xây workflow agent, bạn có thể tham khảo thêm cách một hệ thống như Hermes Agent quản lý model và công cụ để hình dung vai trò của base URL, provider và model ID.

  • Base URL: địa chỉ endpoint 9Router kèm /v1.
  • API key: key do 9Router tạo, không phải access token OAuth của OpenAI.
  • Model: chọn model được 9Router hiển thị trong OpenAI Codex, chẳng hạn model Codex tương ứng mà tài khoản đang được phép sử dụng. Nếu bạn sử dụng Combo, bạn có thể điền tên Combo của bạn, ví dụ của mình là mycombo thì mình sẽ điền là Mycombo.
Cấu hình endpoint 9Router cho ứng dụng client
Base URL, API key nội bộ và model ID của endpoint 9Router.

Tên model có thể thay đổi theo phiên bản 9Router và chính sách upstream. Vì vậy, hãy sao chép model ID trực tiếp từ mục Available Models thay vì nhập theo ảnh chụp hoặc bài hướng dẫn cũ. Nếu client báo model not found, kiểm tra lại combo, trạng thái provider và model suffix như thinking level.

Những lỗi thường gặp khi kết nối

OAuth hoàn tất nhưng connection không active

Nguyên nhân thường nằm ở callback bị chặn, phiên đăng nhập hết hạn hoặc lỗi trao đổi authorization code. Đóng flow hiện tại, tạo connection mới và hoàn tất trong một cửa sổ trình duyệt duy nhất. Không gửi code hoặc URL callback cho bên thứ ba để “fix hộ”.

Request bị từ chối dù connection vẫn còn

Trạng thái active không bảo đảm request sẽ luôn thành công. Token có thể hết hạn, hạn mức Codex có thể đã chạm ngưỡng, model có thể không còn được cấp quyền hoặc upstream đã thay đổi. Hãy chạy test connection, xem quota/log của 9Router và kiểm tra thông báo trực tiếp từ ChatGPT trước khi tạo lại nhiều connection.

Ứng dụng báo lỗi API key

Hãy phân biệt API key nội bộ của 9Router với token OAuth. Client phải dùng key do router phát hành và base URL của router. Không đặt token OAuth vào trường API key, không đưa token vào file công khai và không commit cấu hình có secret lên Git.

Lỗi thường gặp khi kết nối ChatGPT Plus với 9Router
Các lỗi callback, hết hạn mức và chọn sai model.

Rủi ro bảo mật và chính sách cần cân nhắc

Rủi ro lớn nhất không nằm ở vài bước bấm nút, mà ở quyền kiểm soát credential và dữ liệu đi qua lớp trung gian. Khi dùng router, request có thể đi qua 9Router trước khi tới endpoint Codex. Người quản trị router có thể nhìn thấy metadata, log lỗi hoặc nội dung request tùy cách hệ thống được cấu hình.

Không dùng tài khoản chính cho thử nghiệm nếu bạn chưa hiểu cách token được lưu, ai có quyền truy cập dashboard, log được giữ bao lâu và cách xóa connection. Không chia sẻ một connection OAuth cho nhiều người nếu chưa có cơ chế phân quyền, audit và thu hồi rõ ràng. Với dữ liệu khách hàng, mã nguồn riêng tư, thông tin tài chính hoặc dữ liệu cá nhân, hãy đánh giá yêu cầu bảo mật trước khi gửi qua một proxy bên thứ ba.

Trước khi đưa vào workflow thật, nên chạy một bài kiểm tra nhỏ theo ba lớp. Lớp thứ nhất là xác thực: connection có đăng nhập lại được sau khi khởi động 9Router hay không. Lớp thứ hai là vận hành: request có trả đúng model, streaming và khả năng xử lý ảnh mà client yêu cầu hay không. Lớp thứ ba là dữ liệu: log có che secret, nội dung nhạy cảm có bị lưu ngoài dự kiến và người dùng nào được phép xem dashboard. Checklist này giúp phân biệt lỗi cấu hình với giới hạn tài khoản, đồng thời tránh việc gửi dữ liệu thật vào một kết nối chưa được kiểm soát.

Rủi ro tài khoản và dữ liệu khi dùng 9Router
Cần kiểm soát token, log và dữ liệu qua lớp proxy 9Router.

9Router hiện cảnh báo rõ rằng provider OpenAI Codex sử dụng subscription/OAuth session không được cấp phép chính thức cho proxy/router và tài khoản có thể bị hạn chế hoặc cấm. Đây không phải kết luận rằng mọi connection chắc chắn bị khóa, nhưng là rủi ro phải đặt lên trước lợi ích tiết kiệm thao tác. Nếu tài khoản quan trọng, lựa chọn an toàn hơn là dùng API chính thức với billing riêng hoặc dùng công cụ được OpenAI hỗ trợ trực tiếp.

Cách thu hồi quyền và dọn credential

Thu hồi quyền sau khi kết nối ChatGPT Plus với 9Router
Xóa connection, thu hồi phiên và dọn khóa truy cập nội bộ khi ngừng sử dụng.

Khi không còn sử dụng, xóa connection trong 9Router và kiểm tra khu vực quản lý tài khoản OpenAI để thu hồi phiên hoặc quyền ứng dụng nếu có. Sau đó xóa API key nội bộ của 9Router, dọn biến môi trường trên máy chủ và kiểm tra log để chắc chắn không có token bị ghi lại. Nếu nghi ngờ credential đã lộ, đổi mật khẩu, đăng xuất các phiên lạ và thực hiện quy trình bảo mật của OpenAI ngay lập tức.

Điểm cần nhớ là OAuth không biến một dịch vụ trung gian thành sản phẩm chính thức của OpenAI. Kết nối ChatGPT Plus với 9Router chỉ nối quyền truy cập Codex của tài khoản với một lớp proxy. Hãy test bằng dữ liệu không nhạy cảm, giới hạn quyền truy cập dashboard và theo dõi chính sách OpenAI trước khi đưa vào workflow hằng ngày.

Bình luận

0

Chưa có bình luận nào. Hãy là người đầu tiên chia sẻ suy nghĩ!