nsi*_*raj 9 authentication curl okta
我尝试使用curl 登录支持Okta 的站点,使用参数-u {username:password}提供用户名和密码,我得到的只是Okta 重定向页面的html 内容。如何使用curl提供我的Okta 凭据来登录应用程序?
小智 6
假设您已经安装了 jq ( https://stedolan.github.io/jq/download ) ,您可以使用以下脚本:
sessionToken=$(curl -X POST -H "Accept: application/json" -H "Content-Type:
application/json" -d '{
"username": "[okta_username]",
"password": "[password]",
"options": {
"multiOptionalFactorEnroll": true,
"warnBeforePasswordExpired": true
}
}' "https://[yourorg].oktapreview.com/api/v1/authn" | jq '.sessionToken' -r)
Run Code Online (Sandbox Code Playgroud)
curl -X GET "https://[yourorg].oktapreview.com/login/sessionCookieRedirect?token=${sessionToken}&redirectUrl=http://blah" -c "okta-cookie"
Run Code Online (Sandbox Code Playgroud)
curl -X GET [OKTA_EMBED_LINK] -b "okta-cookie" -L -v
Run Code Online (Sandbox Code Playgroud)
从最后一行开始,您需要获取 SAMLResponse 表单参数并将其提交到同一表单的操作 URL。
我希望这有帮助!