ShareAI Platform Docs

Idhinisha mteja kwa PKCE

Tekeleza mtiririko wa ShareAI wa authorization-code na S256 PKCE, thibitisha hali na ubadilishe msimbo kwenye backend ya programu yako.

Tazama kama Markdown
Kwenye ukurasa huu

Mtiririko huu unaunganisha akaunti moja ya mteja na programu yako. Mteja huingia, huchagua akaunti ya kibinafsi au shirika na kuidhinisha ruhusa zilizoombwa. Backend yako kisha hubadilisha msimbo wa muda mfupi kwa tokeni.

Kabla ya kuanza#

Kamilisha usajili wa programu. Unahitaji callback iliyosajiliwa kwa usahihi, hati za mteja zilizoshikiliwa na seva, na kikao cha upande wa seva kwa kivinjari kinachokamilisha idhini.

1. Unda ombi la idhini#

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

Muombe mteja kuidhinisha programu.

URL ya Msingi
https://auth.shareai.now
Uthibitishaji
Uelekezaji wa kivinjari; programu iliyosajiliwa

Tengeneza verifier mpya, hali na nonce kwa kila jaribio. Hifadhi kwenye kikao cha upande wa seva cha mtumiaji anayeanzisha. Tuma changamoto ya SHA-256, kamwe si verifier, kwenye uelekezaji wa kivinjari. Omba tu maeneo ambayo programu yako inahitaji.

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. Thibitisha callback#

Ikiwa idhini imekataliwa, shughulikia kosa la OAuth kama kughairi kawaida. Vinginevyo, linganisha state na thamani iliyohifadhiwa kabla ya kutumia msimbo. Kataa hali iliyokosekana au isiyolingana. Tumia hali iliyohifadhiwa mara moja; usikubali URL za callback zilizowasilishwa na kikao kingine cha kivinjari.

3. Badilisha msimbo#

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

Badilisha msimbo wa matumizi moja na verifier inayolingana ya PKCE.

URL ya Msingi
https://auth.shareai.now
Uthibitishaji
Uthibitishaji wa mteja wa siri

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"

Tumia mbinu ya uthibitishaji wa mteja iliyosanidiwa kwa mteja. Mfano unatumia uthibitishaji wa mteja unaotegemea fomu. Usitumie msimbo huo mara mbili; anza idhini tena baada ya msimbo kutumika au kuisha muda wake.

4. Hifadhi matokeo na anzisha kikao cha programu yako#

Hifadhi tokeni za ufikiaji na upya kwenye backend yako. Tumia expires_in badala ya kudhani tokeni ya kudumu. Ikiwa unatumia tokeni ya ID, thibitisha saini yake na JWKS ya mtoaji, mtoaji anayetarajiwa, hadhira ya mteja, muda wa kuisha na nonce yako ya awali kabla ya kuamini madai.

Endelea na mzunguko wa maisha#

Upya na mzunguko · Maeneo na utambulisho wa akaunti · Maombi ya mazungumzo ya OAuth

Ilisasishwa mwisho Septemba 15, 2026

Nyaraka za Jukwaa la ShareAI
Nyaraka zote

Tafuta kwa kichwa au maudhui.

Uliza kuhusu ukurasa huu

Chagua msaidizi wa kuchunguza ukurasa huu. Unaweza pia kunakili ukurasa na kuubandika kwenye mazungumzo yako.

Ask ChatGPTAsk ClaudeAsk GrokAsk ShareAI