簡體   English   中英

Auth0調用API

[英]Auth0 Calling API

有人可以幫助您從Auth0 API快速入門中了解以下代碼段

curl --request POST \
  --url https://polarcrm.auth0.com/oauth/token \
  --header 'content-type: application/json' \
  --data '{"client_id":"7Sxxxxxxx","client_secret":"J-_Xxxf5gS0lHQnxxxxxx","audience":"https://api.polarcrm.com","grant_type":"client_credentials"}'

進行上面的調用是成功的,它為我提供了一個Access_Token。使用該令牌,我可以對API進行調用,一切正常。

但這對我完全沒有意義。 我有一個在我的SPA應用程序上經過身份驗證的用戶。 Auth0已經知道誰是用戶,並擁有所有用戶信息,包括其訪問令牌和id_token。 但是現在,當該用戶調用API時,API對該用戶一無所知。 在以上代碼段中生成的訪問令牌。 有效負載中僅包含以下數據:

{
  "iss": "https://polarcrm.auth0.com/",
  "sub": "7Sxxxxxx@clients",
  "aud": "https://api.polarcrm.com",
  "iat": 1564769606,
  "exp": 1564856006,
  "azp": "7Sxxxxxx",
  "gty": "client-credentials"
}

如果我的API對調用它的人一無所知,那么該令牌的目的是什么。 API如何返回用戶特定的數據?

如何將用戶信息傳遞給API?

當從SPA發送其他令牌(來自ASP.NET Core身份驗證)或從SPA發送id_token(它們包含用戶信息)時,API調用將失敗,並出現未授權錯誤。

使用客戶端憑據流時,沒有用戶上下文。 對於SPA,請使用帶有pkce的授權代碼流。 這將返回一個包含用戶ID的令牌。

這有點棘手,所以如果有幫助,這里的消息是什么樣的: https : //authguidance.com/2017/09/26/basicspa-oauthworkflow/

如果需要,很高興回答跟進問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM