Hướng dẫn generate Token để tạo Temp URL upload file trong vStorage API

Hướng dẫn generate Token để tạo Temp URL upload file trong vStorage API


  1. Generate Authen Token:


- Truy cập https://iam.console.vngcloud.vn/service-accounts để tạo Service Account để lấy cặp ClientID và SecretID cho project vStorage

Client ID:  ec2d4f62-6580-406e-95e3-b17xxxxxxx

Secret ID: 4ec7b98b-df1c-480e-bc01-38fxxxxxxx


- Dùng lệnh curl sau để generate Authen Token:


Notes

curl --location 'https://iamapis.vngcloud.vn/accounts-api/v1/auth/token' \

--header 'Content-Type: application/json' \

--header 'Authorization: Basic Base64(ClientID:SecretID)' \

--data '{

   "grantType": "client_credentials"

}'


Trong đó Base64(ClientID:SecretID) là mã hóa Base64 của ClientID:SecretID, ta có thể lấy được bằng những cách sau:


Cách 1: Truy cập web https://www.convertstring.com/vi/EncodeDecode/Base64Encode 



Cách 2: Mã hóa trên server linux:

Dùng lệnh: echo -n ClientID:SecretID | base64 -w 0



Cuối cùng ta thay vào lệnh curl:




Ta sẽ được kết quả như sau:


Hoặc nếu dùng Postman:



Vậy là ta đã có được Authen Token.

Lưu ý: Token Expire sau 1800 giây (30 phút). Sau khi expire thì phải gen lại


  1. Dùng Temp URL để upload file:


Bước 1: Get Temp URL:



Notes

curl -X 'POST' \

 'https://hcm03-api.vstorage.vngcloud.vn/api/v1/projects/<Project ID>/containers/<container_name>/objects/<file_name>/upload_tempurls' \

 -H 'accept: */*' \

 -H 'Authorization: Bearer <Token>' \

 -H 'Content-Type: application/json' \

 -d '{

 "timeExpire": 1800

}'



Nếu dùng Postman thì chọn Import --> Paste đoạn curl ở trên vào


Ta có được temp url: https://hcm03.vstorage.vngcloud.vn/v1/AUTH_117fcdb5a67e418f9b62dc19e98d91c9/Hinhanh/spiderman?temp_url_sig=3f39e7936425f45cb4a6e19619a7673576d0816a&temp_url_expires=1732081882


Bước 2: Upload file bằng temp url: 


curl --location --request PUT 'https://hcm03.vstorage.vngcloud.vn/v1/AUTH_117fcdb5a67e418f9b62dc19e98d91c9/Hinhanh/spiderman?temp_url_sig=3f39e7936425f45cb4a6e19619a7673576d0816a&temp_url_expires=1732081882' \

--header 'Content-Type: image/jpeg' \

--data-binary '@/E:/KhaiVT/wallpaper/1728056278558.jpg'




    • Related Articles

    • Get Access Token cho API vServer sử dụng tool Postman

      Giới thiệu tổng quan: Khi sử dụng API vServer (https://vserver-api-docs.vngcloud.vn/service-docs/vserver.html) , trong mọi request đều yêu cầu Access Token nên dưới đây sẽ là hướng dẫn cụ thể Bước 1: Đầu tiên để get được Access Token thì cần có ...
    • Hướng dẫn sử dụng NFS làm Persistent Storage cho cluster VKS

      Hướng dẫn sử dụng NFS làm Persistent Storage cho cluster VKS Do Persistent Volume hiện tại trên chỉ hỗ trợ mode ReadWriteOnce(RWO), không hỗ trợ ReadWriteMany(RWX) nên trong bài viết này VNG Cloud hướng dẫn Quý Khách sử dụng NFS Server hoặc vStorage ...
    • Hướng dẫn setup HA nginx đơn giản bằng keepalived sử dụng VIP

      VNG CLOUD đang cung cấp 1 dịch vụ cho phép người dùng khởi tạo Virtual IP Address (VIP) phục vụ cho nhu cầu High Avaibility (HA) của hệ thống. Hiện tại VIP là 1 private IP, chưa có Public VIP. 1.Khởi tạo VIP trên Portal VNG Cloud Sau khi khởi tạo VIP ...
    • HƯỚNG DẪN THAY ĐỔI THÔNG TIN TÀI KHOẢN QUẢN TRỊ

      Sau khi tài khoản được xác thực, để thay đổi các thông tin tài khoản quản trị như email đăng nhập, thông tin công ty (nếu là Doanh nghiệp), thông tin cá nhân,… Vui lòng làm theo hướng dẫn sau: TRƯỜNG HỢP 1: NẾU BẠN LÀ KHÁCH HÀNG DOANH NGHIỆP. Bước 1: ...
    • HƯỚNG DẪN CẬP NHẬT SSL CHO WEBSERVER APACHE TRÊN UBUNTU 22.04

      Bước 1: Chuẩn bị file SSL Upload file SSL lên server cần thay SSL. Ví dụ: Các file SSL gồm: new_cert.pem new_fullchain.pem new_privkey.pem Bước 2: Xác định domain hết hạn Kiểm tra các domain đã hết hạn bằng lệnh: cd /etc/apache2/sites-available/ Ví ...