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 IP private cho vServer

      Tùy thuộc vào yêu cầu và mục đích sử dụng, ta có thể thay đổi private IP đối với vServer theo hướng dẫn bên dưới Lưu ý: việc thay đổi này sẽ làm interface bị down và không thể kết nối server trong thời gian thực hiện, do đó ở bước 2 cần thực hiện ...
    • Hướng dẫn upgrade pfsense lên version 2.7.2 và cập nhật bản vá CVE-6387

      HƯỚNG DẪN UPGRADE PFSENSE LÊN VERSION 2.7.2 VÀ CẬP NHẬT BẢN VÁ CVE-6387 Hiện tại Pfsense đã có bản vá cho CVE-6387 và thông tin changelog được cập nhật tại đây https://github.com/pfsense/FreeBSD-ports/commits/devel/sysutils/pfSense-pkg-System_Patches ...