15
如何使用Curl進行基於OpenId的認證? 我可以做到嗎? Regards, Allahbaksh通過Curl的OpenId
如何使用Curl進行基於OpenId的認證? 我可以做到嗎? Regards, Allahbaksh通過Curl的OpenId
我想你是在談論curl命令行,而不是圖書館。我沒有嘗試,但根據我所知道的OpenID和curl,它應該是可能的。但是,不完全自動化。如果你想成爲真正的平靜和通用的,你將不得不「解析」身份提供者和內容提供者登錄頁面的內容。如果你知道你要去哪裏,不介意情侶您的服務和客戶端(無HATEOAS),你可以先與身份提供商進行認證,如:
curl -iSsL --user-agent 'Mozilla/5.0' --cookie cookies --cookie-jar cookies \
--data login=$mylogin \
--data passwd=$mypasswd \
https://identprovider.example.com/login
,然後張貼您的OpenID的內容提供者:
curl -iSsL --user-agent 'Mozilla/5.0' --cookie cookies --cookie-jar cookies \
--data openid="$myopenidurl" \
http://contentprovider.example.com/login
這假設內容提供者已經被授權使用身份提供者。 然後讓你的內容:
curl -iSsL --user-agent 'Mozilla/5.0' --cookie cookies --cookie-jar cookies \
http://contentprovider.example.com/interesting/content
請注意,這種做法並不寧靜,因爲我硬編碼在代碼中的POST URI和領域。要分離客戶端和服務器,必須從響應中提取uris和字段名稱。在bash腳本中,例如,可以使用sed
。
我認爲應該可以工作,但如果沒有,那麼你必須真正遵循重定向並提取URI和表單,因爲一些參數可以在重定向URI或隱藏表單域中傳遞。