我正在构建一个内部 Web API(asp.net),我需要将我们的 Okta 身份验证与其集成。我通过 NuGet 安装了 SDK,我可以做一些简单的事情,比如获取用户并查看配置文件。
不过,我真正需要做的是了解我如何获取用户,通过 Okta 对其进行身份验证,然后再验证同一个用户。
这是我在基本概念层面上所拥有的。
var oktaClient = new OktaClient(apiToken: "00vEX-jX3to71axEZ1L3luDfaAPH9d-ZPBV4coG2Ya", baseUri: new Uri(uriString: "https://ourcompany.oktapreview.com"));
AuthClient authClient = oktaClient.GetAuthClient();
AuthResponse response = authClient.Authenticate(username: "MyUserName@corp.ourcompany.com", password: "MyPassword");
AuthResponse huh = authClient.GetStatus(response.StateToken);
问题是我的回复不包含 StateToken。它只包含一个 SessionToken。所以,我真正可以使用一些帮助的是我所缺少的。
我浏览了 Okta 音乐商店(https://github.com/okta/okta-music-store)演示,但这似乎没有回答我的问题。也许是因为它是一个较旧的 MVC 4 应用程序并且我正在使用 WebApi,或者只是因为它是一个比我想要完成的更复杂的示例,我不知道。
我也一直在阅读http://developer.okta.com/docs/api/getting_started/design_principles.html,但我仍然没有看到我所缺少的。