我希望将OpenID实现为一组合作伙伴网站的提供商.事情是这个网站是为孩子(13岁以下)所以我有业务限制需要处理 - 主要是该帐户不能在任何非合作伙伴网站上使用(我们与每个获得批准的合作伙伴合作,以确保他们见面行业隐私/安全法规).
在过去,我们推出了自己的会员和合作伙伴系统,但我希望转向行业认可的引擎,让我们自己和合作伙伴的生活更轻松.
那么,是否有内置的方法将OpenID访问权限限制在某些网站上,或者我是否需要对代码和权限进行一些深度代码更改才能实现此目的?
是的,一点没错.基于你的dotnetopenid标签,我认为这是你正在使用的库,这很棒.进来的IAuthenticationRequest上有一个Realm属性.用它来检查领域值是否显示在合作伙伴网站领域的白名单中.如果是,请继续执行正常的身份验证步骤,并将IAuthenticationRequest.IsAuthenticated设置为true并返回.如果领域未被识别,那么这个<13岁的人正试图使用他们的OpenID登录非合作伙伴网站,你可以设置IsAuthenticated = false并返回将中止他们的登录.
如果您对特定方案有其他疑问,请随时发送电子邮件至dotnetopenid@googlegroups.com