Bagikan melalui


Mulai cepat: Meminta token SAS koleksi STAC

Dalam panduan cepat ini, Anda akan mengambil token SAS tingkat-koleksi yang dapat digunakan oleh aplikasi lain untuk mengakses aset-aset koleksi STAC di akun penyimpanan terkelola dalam sumber daya Microsoft Planetary Computer Pro GeoCatalog.

Dalam beberapa aplikasi, Anda perlu meneruskan token SAS tingkat koleksi untuk mengaktifkan akses terautentikasi ke aset yang disimpan di akun penyimpanan terkelola.

Misalnya, saat mengambil aset tingkat koleksi seperti data Zarr, token SAS menyediakan izin sementara untuk mengakses data langsung dari penyimpanan blob.

Contoh ini menunjukkan cara meminta token SAS tingkat koleksi dari /sas/token/{collection_id} rute.

1. Dapatkan Token Akses untuk Otorisasi ke GeoCatalog

from datetime import datetime, timedelta
import requests
from azure.identity import AzureCliCredential

# Resource ID for Planetary Computer Pro Geocatalog
MPCPRO_APP_ID = "https://geocatalog.spatio.azure.com"

_access_token = None

def getBearerToken():
    global _access_token
    if not _access_token or datetime.fromtimestamp(_access_token.expires_on) < datetime.now() + timedelta(minutes=5):
        credential = AzureCliCredential()
        _access_token = credential.get_token(f"{MPCPRO_APP_ID}/.default")

    return {"Authorization": f"Bearer {_access_token.token}"}

2. Minta Token SAS untuk Koleksi STAC

Akses titik akhir yang mengembalikan token SAS tingkat koleksi STAC sementara Anda.

geocatalog_url = "<your-geocatalog-url>"
collection_id = "<your-collection-id>"

response = requests.get(
        f"{geocatalog_url}/sas/token/{collection_id}",
        headers=getBearerToken(),
        params={"api-version": "2025-04-30-preview"}
    )

sas_token = response.json()["token"]

print(f"SAS Token: {sas_token}")

Variabel sas_token berisi string token yang dapat Anda teruskan ke aplikasi yang perlu mengambil aset tingkat koleksi.