ShareAI Platform Docs

Otorisasi pelanggan nganggo PKCE

Implementasi alur kode-otorisasi ShareAI nganggo S256 PKCE, verifikasi state lan tukar kode ing backend aplikasi sampeyan.

Deleng minangka Markdown
Ing kaca iki

Alur iki nyambungake siji akun pelanggan menyang aplikasi sampeyan. Pelanggan mlebu, milih akun pribadi utawa organisasi lan nyetujui idin sing dijaluk. Backend sampeyan banjur tukar kode sing cendhak kanggo token.

Sadurunge sampeyan miwiti#

Rampung registrasi aplikasi. Sampeyan butuh callback sing didaftarkan kanthi tepat, kredensial klien sing disimpen server lan sesi sisi server kanggo browser sing ngrampungake otorisasi.

1. Gawe panjalukan otorisasi#

GET https://auth.shareai.now/oauth/authorize

Takon pelanggan kanggo ngotorisasi aplikasi.

URL Dasar
https://auth.shareai.now
Otentikasi
Pengalihan browser; aplikasi sing didaftarkan

Gawe verifier anyar, state lan nonce kanggo saben upaya. Simpen ing sesi sisi server pangguna sing miwiti. Kirim tantangan SHA-256, ora tau verifier, ing pengalihan browser. Panjaluk mung lingkup sing dibutuhake aplikasi sampeyan.

Python

import base64
import hashlib
import secrets
import urllib.parse

verifier = secrets.token_urlsafe(48)
challenge = base64.urlsafe_b64encode(hashlib.sha256(verifier.encode()).digest()).rstrip(b"=").decode()
state = secrets.token_urlsafe(32)
nonce = secrets.token_urlsafe(32)
# Store verifier, state and nonce in the user's server-side session.
params = {
    "response_type": "code",
    "client_id": "YOUR_CLIENT_ID",
    "redirect_uri": "https://app.example.com/auth/shareai/callback",
    "scope": "openid profile surcharge",
    "state": state,
    "nonce": nonce,
    "code_challenge": challenge,
    "code_challenge_method": "S256",
}
print("https://auth.shareai.now/oauth/authorize?" + urllib.parse.urlencode(params))

2. Validasi callback#

Yen otorisasi ditolak, tangani kesalahan OAuth minangka pembatalan normal. Yen ora, bandingake state karo nilai sing disimpen sadurunge nggunakake kode. Tolak state sing ilang utawa ora cocog. Gunakake state sing disimpen mung sapisan; aja nampa URL callback sing dikirim dening sesi browser liyane.

3. Tukar kode#

POST https://auth.shareai.now/oauth/token

Tukar kode siji-pangguna lan verifier PKCE sing cocog.

URL Dasar
https://auth.shareai.now
Otentikasi
Otentikasi klien rahasia

cURL

curl --fail-with-body "https://auth.shareai.now/oauth/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  --data-urlencode "grant_type=authorization_code" \
  --data-urlencode "client_id=$SHAREAI_CLIENT_ID" \
  --data-urlencode "client_secret=$SHAREAI_CLIENT_SECRET" \
  --data-urlencode "code=$AUTHORIZATION_CODE" \
  --data-urlencode "redirect_uri=https://app.example.com/auth/shareai/callback" \
  --data-urlencode "code_verifier=$PKCE_VERIFIER"

Gunakake metode otentikasi klien sing dikonfigurasi kanggo klien. Conto nggunakake otentikasi klien berbasis formulir. Aja ngirim kode sing padha kaping pindho; miwiti otorisasi maneh sawise kode digunakake utawa kadaluwarsa.

4. Simpen asil lan nggawe sesi aplikasi sampeyan#

Simpen token akses lan refresh ing backend sampeyan. Gunakake expires_in sing bali tinimbang nganggep token permanen. Yen sampeyan nggunakake token ID, validasi tandatangane karo JWKS penerbit, penerbit sing diarepake, pamirsa klien, kadaluwarsa lan nonce asli sampeyan sadurunge percaya klaim.

Terusake siklus urip#

Refresh lan rotasi · Lingkup lan identitas akun · Panjalukan obrolan OAuth

Paling anyar dianyari Septèmber 15, 2026

Dokumen Platform ShareAI
Kabeh dokumentasi

Telusuri miturut judhul utawa isi.

Takon babagan kaca iki

Pilih asisten kanggo njelajah kaca iki. Sampeyan uga bisa nyalin kaca lan nempelake menyang obrolan sampeyan.

Ask ChatGPTAsk ClaudeAsk GrokAsk ShareAI