Hướng dẫn tạo Service Account với Rclone trên Google Drive để tăng hạn mức API

Lý do dùng qua tài khoản Service Account vì nó có khoảng 12,000 kết nối API mỗi phút, sẽ hạn chế vấn đề giới hạn API hơn so với dùng OAuth2 thông qua trình duyệt web ở tài khoản thông thường, cụ thể ưu điểm như sau

  • Hoạt động như một tài khoản riêng biệt
  • Có quota API riêng
  • Không cần xác thực qua trình duyệt
  • Thích hợp cho ứng dụng tự động/server
  • Có thể tạo nhiều service accounts để tăng quota

Hướng dẫn tạo Service Account với Rclone trên Google Drive để tăng hạn mức API

Nói chung bạn nào dùng Rclone trên Google Drive thì dùng tài khoản Service Account cho khỏe, upload nhiều đỡ gặp vấn đề lỗi do không đủ API

Cấu hình trong bài là tạo Service Account cho Google Drive dùng trên Rclone

Các bước chính là tạo 1 tài khoản Google mới (hoặc tài khoản phụ) dùng nó để tạo Service Account, sau đó kết nối tới 1 thư mục bất kì (share) từ Google Drive ở tài khoản chính

Bước 1: login vào tài khoản phụ, cấu hình như bên dưới, có thể tạo tab private mới cho khỏi nhầm (Ctrl + Shift + N)

  • Tạo Project mới tại đây

Đặt tên project và chọn Create

  • Bật Google Drive API theo link này

Vào APIs & Services > Credentials

  • Click Create Credentials > Service Account
    • Điền thông tin Service account details
    • Service account name: đặt tên tùy ý
    • Click Create
  • Click vào Credentials vừa tạo
    • Tab KEYS > Add Key > Create new key
    • Chọn JSON
    • Tải file JSON về máy

Cấu trúc file JSON sẽ có định dạng data-infinity-442422-e5-611e0babf6a7.json

  • Ở ngoài tab chính, vào lại Credentials, sẽ thấy phần Service Accounts, bên dưới có thông tin email dạng: name@project-id.iam.gserviceaccount.com

Bước 2: login vào tài khoản chính

  • Trên Google Drive, tạo 1 thư mục mới (_Google-Driver-API) để tài khoản phụ upload vào đây
  • Phải chuột, chọn share với email Service Account từ tài khoản phụ

Tiếp theo là lấy ID của thư mục này

  • Khi click vào thư mục _Google-Driver-API, sẽ thấy đường dẫn dạng https://drive.google.com/drive/folders/1ZR9S5_UptvhBFQL0KX253rIQzf_1qy_y

1ZR9S5_UptvhBFQL0KX253rIQzf_1qy_y là ID của thư mục

Bước 3: Lúc này chúng ta đã có file Credentials JSON từ tài khoản phụ và thông tin ID thư mục cần upload từ tài khoản chính, sử dụng nó để tạo cấu hình rclone

  • Upload file data-infinity-448422-e5-631e0babf6a7.json lên 1 vị trí nào đó trên VPS, ví dụ /home/backup/config/

Tiếp theo gõ:

nano /root/.config/rclone/rclone.conf

Kéo xuống dưới cùng, copy các dòng bên dưới vào cho nhanh:

[google-drive-api]
type = drive
scope = drive
service_account_file = /home/backup/config/data-infinity-448422-e5-631e0babf6a7.json
team_drive =
root_folder_id = 1ZR9S5_UptvhBFQL0KX253rIQzf_1qy_y
  • google-drive-api tên cấu hình, đặt tùy thích
  • service_account_file: đường dẫn đầy đủ tới file data-infinity-448422-e5-631e0babf6a7.json
  • root_folder_id ID thư mục lấy ở bước 2

Ctrl+O -> Enter -> Ctrl+X để save và exit.

  • Kiểm tra xem cấu hình đúng chưa?
echo "Test upload file to Google Drive" | rclone rcat google-drive-api:/test.txt
  • Vào thư mục _Google-Driver-API, thấy có 1 file mới test.txt là mọi bước cấu hình chính xác

Bạn nào lần đầu làm thì hơi lọng ngọng, vì menu của Google họ sửa lại suốt, chằng chịt, nhìn mệt lắm, mình đã copy các link trực tiếp ra cho nhanh 😀 bài này viết 1 phần để sau coi lại, chứ thiệt các bước của nó dễ quên lắm


Related Posts

Chính sách bình luận: Chúng tôi rất trân trọng các bình luận của bạn và cảm ơn thời gian bạn dành để chia sẻ ý tưởng và phản hồi.
Ghi chú: Những bình luận được xác định là spam hoặc chỉ mang tính quảng cáo sẽ bị xóa.

• Để cải thiện trải nghiệm bình luận, chúng tôi khuyến khích bạn tạo một tài khoản Gravatar. Thêm avatar vào tài khoản Gravatar sẽ giúp bình luận của bạn dễ nhận diện hơn đối với các thành viên khác.

✂️ Sao chép và 📋 Dán Emoji 💪 giúp bình luận thêm sinh động và thú vị!