使用Stormpath,可以通过执行以下操作检查应用程序是否存在电子邮件;
tunji@gmail.com
然而,我注意到Stormpath Social signin是基于目录的,并不检查其他目录中的重复项。
例如,如果有用户使用电子邮件地址 tunji@gmail.com
注册Facebook,则同一用户尝试再次注册时,其gmail仍为 {{1 stormpath目前做的是将两个用户保存在我的两个不同目录中(例如facebook目录和谷歌目录)。这不是我想要的。
我希望能够确保如果 tunji@gmail.com
存在于任何目录中,则不应将其注册到任何其他目录中。应该简单地选择相关的帐户并且应该代表相同的用户。
问题是Stormpath以下列方式检索社交注册帐户;
ProviderAccountRequest request = Providers.GOOGLE.account().setAccessToken(token).build();
ProviderAccountResult result = application.getAccount(request);
这样做只会检查指定目录(google)以查找关联的帐户对象 (它不会检查整个应用程序) < / strong>,如果该目录中不存在,则会自动创建一个并返回新的帐户对象,因此无法进行检查并决定是否应创建帐户。
是否有另一种方法可以在stormpath中实现此流程?
答案 0 :(得分:4)
开发人员使用Stormpath有几种不同的方式,它完全基于他们的应用程序:
开箱即用,Stormpath支持#1,但我们确实有一些需求大约为#2的客户,他们通过利用Stormpath中的一项称为自定义数据的功能来实现这一目标。使用自定义数据,开发人员可以在Google或Facebook目录与实际主人之间建立单向或双向链接。帐户在另一个目录中。
这是如何运作的:
我希望这是有道理的。