我有一个Stormpath中间件进行认证的应用程序设置。我也有我的帐户设置使用每个组织模型的组。它似乎登录和一切,但我很努力寻找一种合理的方式来获得登录用户的组织ID或名称基地。在.Net Core中检索Stormpath中的用户组织?
随着Stormpath.SDK.Account参考,我可以做类似:
private readonly IAccount _account;
var name = _account.FullName;
我希望类似的东西可以检索组织,但我没有找到他们的SDK参考中的任何东西。到目前为止,我已经尝试过:
从我的索赔中检索组织。 This looks like it'll be available via the "onk" claim,但我没有看到,在_claim的属性从下面的代码看时作为一个选项:
ClaimsPrincipal _claim = new ClaimsPrincipal(User.Identity);
var OrganizationId = _claim.FindFirst("onk").Value;
我还没有看到一个方法来检索组织了头的。它appears that Host is available in the header,但用于Core的SDK似乎并没有让我知道。
理想情况下,我希望用户能够登录,而不必将其租户指定为登录表单中的子域或字段。由于它将通过我的组织商店,我认为这是可行的。
关于我失踪的任何想法?
这实际上是一个用例,我现在正在推测并开始工作(我是Stormpath SDK的作者)。只是为了正确理解你的情况:在登录期间你不会指定组织(让默认的登录流程迭代Orgs),并且希望稍后再获取用户的组织? –
是的。例如,如果我要用多租户推出我自己的登录系统,我希望组织与我的用户帐户有很多关系。同样,用户可能会与组织有单一(或多个)关系。这样,我可以做Account.OrganizationId来管理我自己的数据库中的TenantId列。目前,它看起来像我可以从.NET中的主机头获得。不过,我还没有想出如何通过标准/登录表单传递这些信息。 –
啊,首先错过了你的问题中的“每个组织模型的组”模式。只是为了澄清:您的租户是使用Stormpath Group资源建模的吗? –