Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Session OKTA正在验证来自其他应用程序的用户会话_Session_Okta - Fatal编程技术网

Session OKTA正在验证来自其他应用程序的用户会话

Session OKTA正在验证来自其他应用程序的用户会话,session,okta,Session,Okta,使用OktaSignIn小部件,我可以获得res.session.token。我可以在另一个应用程序中使用此属性(或其他属性)和APIKey,并验证这是一个有效的会话吗 我们只想要一个简单易用的身份验证系统,不想设置OpenAuth 似乎找不到任何能满足我需要的API。。但我当然会错过的 编辑。基本上。。。我们的前端使用OktaSignInWidget。。。然后我们希望在API服务层可以验证的承载令牌中使用它 谢谢 看来这会奏效 /api/v1/sessions/me 从这里得到身份证 {“id

使用OktaSignIn小部件,我可以获得res.session.token。我可以在另一个应用程序中使用此属性(或其他属性)和APIKey,并验证这是一个有效的会话吗

我们只想要一个简单易用的身份验证系统,不想设置OpenAuth

似乎找不到任何能满足我需要的API。。但我当然会错过的

编辑。基本上。。。我们的前端使用OktaSignInWidget。。。然后我们希望在API服务层可以验证的承载令牌中使用它


谢谢

看来这会奏效

/api/v1/sessions/me

从这里得到身份证

{“id”:“102WTHEHHR4Q4RH2FJY6PGA”,“用户id”:“00u9uwkfyfiz3Y7uk0h7”

然后…这可以被传递,并使用API密钥…发布一个GET to

/api/v1/sessions/102wtHeHhr4Q4q4rh2Fjy6pGA

返回

会话


对/api/v1/sessions的调用需要api键——这很好。

看起来这样可以

/api/v1/sessions/me

从这里得到身份证

{“id”:“102WTHEHHR4Q4RH2FJY6PGA”,“用户id”:“00u9uwkfyfiz3Y7uk0h7”

然后…这可以被传递,并使用API密钥…发布一个GET to

/api/v1/sessions/102wtHeHhr4Q4q4rh2Fjy6pGA

返回

会话


对/api/v1/sessions的调用需要api密钥——这很好。

如您所述,您可以通过以下方式使用会话id查看会话在Okta服务器上是否仍然有效:

  • 将sessionToken交换为okta会话
  • 重定向回应用程序后,调用/api/v1/sessions/me获取会话ID
  • 将/api/v1/sessions/id请求中的sessionId与apiToken一起使用,查看它是否仍然有效
  • 只要用户尚未从Okta注销,这将存在,但浏览器状态可能不同-例如,当用户的浏览器关闭时,Okta会话cookie通常会被删除,而会话可能仍存在于服务器上

    或者,要检查浏览器会话是否仍然存在,您可以通过向/api/v1/sessions/me发出请求,在客户端进行验证检查-一个解决方法是确保为您的应用程序运行的两个域都启用了CORS,以便它们有权向Okta发出此请求


    上述方法可行,但听起来您应该研究的是Okta(OAuth2)——它是为这种类型的流设计的(将承载令牌传递到API服务层)。

    如您所述,您可以通过以下方式使用会话id查看会话在Okta服务器上是否仍然有效:

  • 将sessionToken交换为okta会话
  • 重定向回应用程序后,调用/api/v1/sessions/me获取会话ID
  • 将/api/v1/sessions/id请求中的sessionId与apiToken一起使用,查看它是否仍然有效
  • 只要用户尚未从Okta注销,这将存在,但浏览器状态可能不同-例如,当用户的浏览器关闭时,Okta会话cookie通常会被删除,而会话可能仍存在于服务器上

    或者,要检查浏览器会话是否仍然存在,您可以通过向/api/v1/sessions/me发出请求,在客户端进行验证检查-一个解决方法是确保为您的应用程序运行的两个域都启用了CORS,以便它们有权向Okta发出此请求


    上面的方法是有效的,但听起来您应该研究的是Okta的(OAuth2)-它是为这种类型的流(将承载令牌传递到API服务层)而设计的。

    Cheers..今天实际上更改为OAUth流..效果很好。tx!Cheers..今天实际上更改为OAUth流..效果很好。tx!