发明内容
本申请提供了一种应用登录及应用访问应用服务器的方法、电子设备,可以使客户端应用可以准确地访问其用户归属地区的应用服务器,以满足隐私合规要求。
为解决上述技术问题,第一方面,本申请的实施方式提供了一种应用登录方法,包括:客户终端发送登录请求;登录请求中包括在客户终端中执行的客户端应用的授权请求信息以及客户端应用的用户归属地标识信息;认证服务器接收登录请求;根据登录请求生成用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的应用服务器的访问信息,并发送给客户终端;客户终端接收授权信息和访问信息,并使客户端应用根据授权信息和访问信息访问客户端应用的用户所归属区域的应用服务器。
在客户端应用进行登录时,认证服务器接收来自客户终端发送的该客户端应用的登录请求,通过该登录请求中的授权请求信息可以完成对该客户端应用的登录认证,并生成响应于该授权请求信息的授权信息;认证服务器通过该登录请求中的客户端应用的用户归属地标识信息可以确定客户端应用的用户所归属地区的应用服务器,并生成关于该客户端应用的用户所归属地区的应用服务器的访问信息。认证服务器将该授权信息和访问信息发送给客户终端,以使在客户终端中执行的该客户端应用可以根据该访问信息准确地访问其用户归属地区的应用服务器,以满足隐私合规要求,有效地提高了用户的隐私安全;并且客户端应用根据该授权信息可以完成与该应用服务器的登录认证。
在上述第一方面的一种可能的实现中,授权请求信息包括要求获取授权码的信息,初始配置的客户端应用的应用服务器的地址信息和客户端应用的应用ID。
在上述第一方面的一种可能的实现中,认证服务器为根据初始配置的客户端应用的应用服务器的地址信息确定的区域内的认证服务器;且认证服务器所在的区域与用户所归属区域不一致。
第二方面,本申请的实施方式提供了一种应用登录方法,包括:客户终端发送登录请求;登录请求中包括在客户终端中执行的另一客户端应用以在客户终端中执行的客户端应用的用户登录的授权请求信息以及客户端应用的用户归属地标识信息;认证服务器接收登录请求;根据登录请求生成用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的用于另一客户端应用的应用服务器的访问信息;将授权信息和访问信息发送给客户终端;客户终端接收授权信息和访问信息,并将授权信息和访问信息经由客户端应用发送至另一客户端应用,以使另一客户端应用根据授权信息和访问信息访问用于另一客户端应用的应用服务器。
在客户终端中执行的另一客户端应用以在客户终端中执行的客户端应用的用户进行登录时,认证服务器接收来自客户终端发送的客户端应用的登录请求,通过该登录请求中的授权请求信息可以完成对该另一客户端应用的登录认证,生成响应于该授权请求信息的授权信息;并且认证服务器生成基于登录请求中的客户端应用的用户归属地标识信息确认的客户端应用的用户所归属区域的用于另一客户端应用的应用服务器的访问信息。认证服务器将该授权信息和访问信息经由客户终端中的客户端应用发送给另一客户端应用,另一客户端应用可以根据该访问信息准确地访问其应该访问的隐私合规区域内的应用服务器,以满足隐私合规要求,有效地提高了用户的隐私安全;并且另一客户端应用根据该授权信息可以完成与该应用服务器的登录认证。
在上述第二方面的一种可能的实现中,授权请求信息包括要求获取授权码的信息,初始配置的另一客户端应用的应用服务器的地址信息和另一客户端应用的应用ID。
在上述第二方面的一种可能的实现中,认证服务器为根据初始配置的另一客户端应用的应用服务器的地址信息确定的区域内的认证服务器;且认证服务器所在的区域与用户所归属区域不一致。
第三方面,本申请的实施方式提供了一种应用登录方法,应用于认证服务器,包括:接收来自客户端应用的登录请求,登录请求中包括客户端应用的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取登录认证;根据登录请求生成用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的应用服务器的访问信息,并发送。
在客户端应用进行登录时,认证服务器接收来自客户端应用的登录请求,通过该登录请求中的授权请求信息可以完成对该客户端应用的登录认证,并生成响应于该授权请求信息的授权信息;认证服务器通过该登录请求中的客户端应用的用户归属地标识信息可以确定客户端应用的用户所归属地区的应用服务器,并生成关于该客户端应用的用户所归属地区的应用服务器的访问信息。认证服务器将该授权信息和访问信息发送给客户端应用,客户端应用可以根据该访问信息准确地访问其用户归属地区的应用服务器,以满足隐私合规要求,有效地提高了用户的隐私安全;并且客户端应用根据该授权信息可以完成与该应用服务器的登录认证。
在上述第三方面的一种可能的实现中,访问信息与授权信息合并在作为反馈登录请求的信息中发送,如此可以通过只发送一个信息即可实现访问信息与授权信息的发送,有效地提高了通信效率。
在上述第三方面的一种可能的实现中,根据用户归属地标识信息确定客户端应用的用户的归属地,并根据在本地配置的归属区域和应用服务器地址的对应关系,确定应用服务器的地址信息,生成包括应用服务器的地址信息的访问信息。通过用户归属地标识信息可以确定该客户端应用的用户的归属地,根据在认证服务器本地配置的归属区域和应用服务器地址的对应关系,从而可以准确地确定该客户端应用的用户的归属地区的应用服务器的地址,将该地址通过访问信息发给客户端应用,使得客户端应用可以准确根据该地址访问其用户归属地区的应用服务器,以满足隐私合规要求,有效地提高了用户的隐私安全。
在上述第三方面的一种可能的实现中,应用服务器的地址信息通过回调地址参数配置。通过回调地址参数返回地址信息可以方便地实现地址信息的发送。
在上述第三方面的一种可能的实现中,授权请求信息包括要求获取授权码的信息,初始配置的客户端应用的应用服务器的地址信息和客户端应用的应用ID。
在上述第三方面的一种可能的实现中,认证服务器为根据初始配置的客户端应用的应用服务器的地址信息确定的区域内的认证服务器;且认证服务器所在的区域与用户所归属区域不一致。
在上述第三方面的一种可能的实现中,授权信息包括授权码。
在上述第三方面的一种可能的实现中,用户归属地标识信息为可以标识客户端应用的用户的归属地区的信息,该用户归属地标识信息包括客户端应用的用户的账号信息、客户端应用的分发渠道、客户端应用请求的源IP地址、客户端应用所在客户终端的终端信息(包括设备的生产/发货地等信息)中的至少一个。
第四方面,本申请的实施方式提供了一种应用登录方法,应用于认证服务器,包括:接收来自客户端应用的登录请求,登录请求中包括另一客户端应用以客户端应用的用户登录的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取另一客户端应用以客户端应用的用户登录的登录认证;根据登录请求生成用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的用于另一客户端应用的应用服务器的访问信息,并经由客户端应用发送至另一客户端应用。
在另一客户端应用以客户端应用的用户进行登录时,认证服务器接收来自客户端应用的登录请求,通过该登录请求中的授权请求信息可以完成对该另一客户端应用的登录认证,生成响应于该授权请求信息的授权信息;并且认证服务器生成基于登录请求中的客户端应用的用户归属地标识信息确认的客户端应用的用户所归属区域的用于另一客户端应用的应用服务器的访问信息。认证服务器将该授权信息和访问信息经由客户端应用发送给另一客户端应用,另一客户端应用可以根据该访问信息准确地访问其应该访问的隐私合规区域内的应用服务器,以满足隐私合规要求,有效地提高了用户的隐私安全;并且另一客户端应用根据该授权信息可以完成与该应用服务器的登录认证。
在上述第四方面的一种可能的实现中,访问信息与授权信息合并在作为反馈登录请求的信息中发送,如此可以通过只发送一个信息即可实现访问信息与授权信息的发送,有效地提高了通信效率。
在上述第四方面的一种可能的实现中,根据用户归属地标识信息确定客户端应用的用户的归属地,并根据在本地配置的归属区域和应用服务器的地址的对应关系,确定用于另一客户端应用的应用服务器的地址,生成包括用于另一客户端应用的应用服务器的地址信息的访问信息。通过用户归属地标识信息可以确定该客户端应用的用户的归属地,根据在认证服务器本地配置的归属区域和应用服务器的地址的对应关系,从而可以准确地确定客户端应用的用户所归属区域内用于另一客户端应用访问的应用服务器的地址,将该地址通过访问信息发给另一客户端应用,使得另一客户端应用可以准确地根据该地址访问其应该访问的隐私合规地区内的应用服务器,以满足隐私合规要求,有效地提高了用户的隐私安全。
在上述第四方面的一种可能的实现中,用于另一客户端应用的应用服务器的地址信息通过回调地址参数配置。通过回调地址参数返回地址信息可以方便地实现地址信息的发送。
在上述第四方面的一种可能的实现中,授权请求信息包括要求获取授权码的信息,初始配置的另一客户端应用的服务器的地址信息和另一客户端应用的应用ID。
在上述第四方面的一种可能的实现中,认证服务器为根据初始配置的另一客户端应用的应用服务器的地址信息确定的区域内的认证服务器;且认证服务器所在的区域与用户所归属区域不一致。
在上述第四方面的一种可能的实现中,授权信息包括授权码。
在上述第四方面的一种可能的实现中,用户归属地标识信息为可以标识客户端应用的用户的归属地区的信息,该用户归属地标识信息包括客户端应用的用户的账号信息、客户端应用的分发渠道、客户端应用请求的源IP地址、客户端应用所在客户终端的终端信息(包括设备的生产/发货地等信息)中的至少一个。
第五方面,本申请的实施方式提供了一种应用访问应用服务器的方法,应用于客户终端,包括:发送登录请求;登录请求中包括客户端应用的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取登录认证;接收来自认证服务器的由认证服务器根据登录请求生成的用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的应用服务器的访问信息;根据授权信息和访问信息访问客户端应用的用户所归属区域的应用服务器。
在客户端应用进行认证登录时,客户端应用向认证服务器发送登录请求,认证服务器接收到登录请求后通过该登录请求中的授权请求信息可以完成对该客户端应用的登录认证,并生成响应于该授权请求信息的授权信息;认证服务器通过该登录请求中的客户端应用的用户归属地标识信息可以确定客户端应用的用户所归属地区的应用服务器,并生成关于该客户端应用的用户所归属地区的应用服务器的访问信息。认证服务器将该授权信息和访问信息发送给客户端应用,客户端应用可以根据该访问信息准确地访问其用户归属地区的应用服务器,以满足隐私合规要求,有效地提高了用户的隐私安全;并且客户端应用根据该授权信息可以完成与该应用服务器的登录认证。
第六方面,本申请的实施方式提供了一种应用访问应用服务器的方法,应用于客户终端,包括:发送登录请求;登录请求中包括另一客户端应用以客户端应用的用户登录的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取另一客户端应用以客户端应用的用户登录的登录认证;接收来自认证服务器的由认证服务器根据登录请求生成的用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属的用于另一客户端应用的应用服务器的访问信息;将授权信息和访问信息转发至另一客户端应用以使另一客户端应用根据授权信息和访问信息访问用于另一客户端应用的应用服务器。
在另一客户端应用以客户端应用的用户进行登录时,另一客户端应用向客户端应用发送一请求,客户端应用接收到该请求后向认证服务器发送登录请求,认证服务器接收登录请求,通过该登录请求中的授权请求信息可以完成对该另一客户端应用的登录认证,生成响应于该授权请求信息的授权信息;并且认证服务器生成基于登录请求中的客户端应用的用户归属地标识信息确认的客户端应用的用户所归属区域的用于另一客户端应用的应用服务器的访问信息。认证服务器将该授权信息和访问信息经由客户端应用发送给另一客户端应用,另一客户端应用可以根据该访问信息准确地访问其应该访问的隐私合规区域内的应用服务器,以满足隐私合规要求,有效地提高了用户的隐私安全;并且另一客户端应用根据该授权信息可以完成与该应用服务器的登录认证。
第七方面,本申请的实施方式提供了一种认证服务器,认证服务器包括:接收模块,用于接收来自客户端应用的登录请求,登录请求中包括客户端应用的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取登录认证;处理模块,用于根据登录请求生成用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的应用服务器的访问信息;发送模块,用于发送授权信息和访问信息。
本申请提供的认证服务器,包括用于执行上述第三方面和/或第三方面的任意一种可能的实现方式所提供的应用登录方法的模块,因此也能实现第三方面提供的应用登录方法所具备的有益效果(或优点)。
第八方面,本申请的实施方式提供了一种认证服务器,认证服务器包括:接收模块,用于接收来自客户端应用的登录请求,登录请求中包括另一客户端应用以客户端应用的用户登录的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取另一客户端应用以客户端应用的用户登录的登录认证;处理模块,用于根据登录请求生成用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属地区的用于另一客户端应用的应用服务器的访问信息;发送模块,用于经由客户端应用将授权信息和访问信息发送至另一客户端应用。
本申请提供的认证服务器,包括用于执行上述第四方面和/或第四方面的任意一种可能的实现方式所提供的应用登录方法的模块,因此也能实现第四方面提供的应用登录方法所具备的有益效果(或优点)。
第九方面,本申请的实施方式提供了一种客户终端,包括:发送模块,用于发送登录请求;登录请求中包括客户端应用的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取登录认证;接收模块,接收来自认证服务器的由认证服务器根据登录请求生成的用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的应用服务器的访问信息;访问处理模块,用于根据授权信息和访问信息访问客户端应用的用户所归属区域的应用服务器。
本申请提供的客户终端,包括用于执行上述第五方面和/或第五方面的任意一种可能的实现方式所提供的应用访问应用服务器的方法的模块,因此也能实现第五方面提供的应用访问应用服务器的方法所具备的有益效果(或优点)。
第十方面,本申请的实施方式提供了一种客户终端,包括:发送模块,用于发送登录请求;登录请求中包括另一客户端应用以客户端应用的用户登录的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取另一客户端应用以客户端应用的用户登录的登录认证;接收模块,用于接收来自认证服务器的由认证服务器根据登录请求生成的用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属的用于另一客户端应用的应用服务器的访问信息;访问处理模块,用于将授权信息和访问信息转发至另一客户端应用以使另一客户端应用根据授权信息和访问信息访问用于另一客户端应用的应用服务器。
本申请提供的客户终端,包括用于执行上述第六方面和/或第六方面的任意一种可能的实现方式所提供的应用访问应用服务器的方法的模块,因此也能实现第六方面提供的应用访问应用服务器的方法所具备的有益效果(或优点)。
第十一方面,本申请的实施方式提供了一种通信系统,包括:认证服务器和客户终端;认证服务器为上述第七方面的认证服务器;客户终端为上述第九方面的客户终端;或认证服务器为上述第八方面的认证服务器;客户终端为上述第十方面的客户终端。
本申请提供的通信系统,包括用于执行上述任意一种可能的实现方式所提供的应用登录方法的认证服务器,和执行上述任意一种可能的实现方式所提供的应用访问应用服务器的方法的客户终端,因此也能实现其对应的有益效果(或优点)。
第十二方面,本申请的实施方式提供了一种电子设备,包括:存储器,用于存储计算机程序,计算机程序包括程序指令;处理器,用于执行程序指令,以使该电子设备执行前述的应用登录方法,或使该电子设备执行前述的应用访问应用服务器的方法。
第十三方面,本申请的实施方式提供了一种计算机可读取存储介质,计算机可读取存储介质存储有计算机程序,计算机程序包括程序指令,程序指令被计算机运行以使计算机执行前述的应用登录方法,或前述的应用访问应用服务器的方法。
具体实施方式
以下由特定的具体实施例说明本申请的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本申请的其他优点及功效。虽然本申请的描述将结合实施例一起介绍,但这并不代表此申请的特征仅限于该实施方式。恰恰相反,结合实施方式作申请介绍的目的是为了覆盖基于本申请的权利要求而有可能延伸出的其它选择或改造。为了提供对本申请的深度了解,以下描述中将包含许多具体的细节。本申请也可以不使用这些细节实施。此外,为了避免混乱或模糊本申请的重点,有些具体细节将在描述中被省略。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
应注意的是,在本说明书中,相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请的实施方式作进一步地详细描述。
当前经常存在客户端应用不能准确访问其用户归属地区的应用服务器的问题。
一种方式中,在面向不同地区的用户提供互联网服务时,通常的做法是不同地区的应用服务器的地址不同,同时向不同地区的用户提供仅访问本地区的应用服务器地址的客户端应用版本。参见图1,图1为一种应用访问应用服务器的场景图,比如某业务在亚太地区和欧洲地区提供互联网服务,为了满足隐私合规要求,会在亚太地区部署应用服务器,为亚太地区的用户提供服务;在欧洲地区部署应用服务器,为欧洲地区的用户提供服务。亚太地区和欧洲地区的应用服务器的地址域名分别采用不同的域名(比如亚太地区的地址域名为as.example.com,欧洲地区的地址域名为eu.example.com),因此面向亚太地区用户的客户端应用会预置亚太地区应用服务器的域名,而面向欧洲地区用户的客户端应用则会预置欧洲地区应用服务器的域名,客户端应用根据预置的应用服务器的域名访问对应应用服务器,从而保证这两个地区的用户使用的客户端应用访问的应用服务器是正确的。
这种方式中,用户可能会安装面向其他地区用户提供的客户端应用版本,比如欧洲用户下载安装了面向亚太用户提供的版本,导致欧洲用户的个人数据存储到了亚太地区的应用服务器上,从而带来隐私合规风险。而且针对不同的地区提供不同的版本,也增加了开发和维护的成本。
另一种方式中,客户端应用不区分面向不同地区的版本,只提供全球统一版本的客户端应用,各地部署的应用服务器配置相同的地址域名(比如www.example.com),客户端应用使用此地址域名就近访问应用服务器。参见图2,图2为另一种应用访问应用服务器的场景图,比如某业务在亚太地区和欧洲地区提供互联网服务,为了满足隐私合规要求,会在亚太地区部署应用服务器为亚太地区的用户提供服务,在欧洲地区部署应用服务器为欧洲地区的用户提供服务。但是亚太地区和欧洲地区的应用服务器的地址域名采用相同的域名,客户端应用预置这个相同的地址域名。当用户处在亚太地区,使用客户端应用访问应用服务器,DNS(Domain Name System,域名系统)服务器会将此地址域名解析成亚太地区的应用服务器的IP地址,那么客户端应用则会与亚太地区的应用服务器建立链接。当用户旅游或者出差到欧洲地区时(漫游到欧洲地区),使用同一客户端应用访问应用服务器,DNS服务器则会将此地址域名解析成欧洲地区的应用服务器的IP地址,那么客户端应用则会与欧洲地区的应用服务器建立连接。
这种方式中,用户从一个地区漫游到另外一个地区后,客户端应用会访问到漫游地区的应用服务器,也会导致用户的个人数据存储到漫游地区的应用服务器上等,从而带来隐私合规风险。
前述两种现有的客户端应用访问应用服务器的方法皆存在由于客户端应用不能准确访问其用户归属地区的应用服务器,带来隐私合规风险的问题。
本申请提供了一种与现有技术不同的应用登录方法,可以使客户端应用准确访问其用户归属地区的应用服务器,以符合隐私合规要求。
参见图3,图3所示为根据本申请的一实施例提供的应用登录及应用访问应用服务器的场景图。示例性的,在该场景中,包括客户终端10(客户终端10上布置有客户端应用100),以及漫游站点300和归属站点400,漫游站点300中部署有认证服务器310,归属站点400中部署有应用服务器420。其中归属站点400为客户端应用100为符合隐私合规要求,实际需要访问的区域;漫游站点300为客户端应用100在进行登录时,访问的该实际需要访问的区域以外的区域。进一步地,漫游站点300中还可以部署有应用服务器320,归属站点400中还可以部署有认证服务器410。
本实施例提供了一种应用登录方法,该应用登录方法可以使得客户端应用可以准确地访问为满足隐私合规要求其应该访问的应用服务器,以符合隐私合规要求。
参见图4,图4所示为根据本申请的一实施方式提供的应用登录方法的方法流程图,且该方法具体包括:
S101,客户终端发送登录请求;登录请求中包括在客户终端中执行的客户端应用的授权请求信息以及客户端应用的用户归属地标识信息。
S102,认证服务器接收登录请求;根据登录请求生成用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的应用服务器的访问信息,并发送给客户终端。
S103,客户终端接收授权信息和访问信息,并使客户端应用根据授权信息和访问信息访问客户端应用的用户所归属区域的应用服务器。
示例性的,授权请求信息包括要求获取授权码的信息,初始配置的客户端应用的应用服务器的地址信息和客户端应用的应用ID。
示例性的,在本实施方式的一种可能的实现中,归属地标识信息为可以标识客户端应用的用户的归属地区的信息,该用户归属地标识信息包括客户端应用的用户的账号信息、客户端应用的分发渠道、客户端请求的源IP地址、客户端应用所在客户终端的终端信息(包括设备的生产/发货地等信息)中的至少一个。
示例性的,在本实施方式的一种可能的实现中,授权信息包括授权码。
示例性的,在本实施方式的一种可能的实现中,认证服务器为根据初始配置的客户端应用的应用服务器的地址信息确定的区域内的认证服务器;且认证服务器所在的区域与用户所归属区域不一致。
具体的,在本实施方式的一种可能的实现中,客户终端具体可以是图3所示的客户终端10,客户端应用具体可以是客户端应用100,客户端应用100位于其归属区域以外的其他漫游区域,则认证服务器为认证服务器310(认证服务器310为客户端应用100所处区域内的认证服务器,即漫游站点300内的认证服务器),客户端应用100的用户所归属区域的应用服务器具体可以为应用服务器420(即应用服务器420为归属站点400内的应用服务器)。客户端应用100为全球统一版本,其初始配置的客户端应用100的应用服务器的地址信息具体可以是比如前述的www.example.com。
在客户端应用100进行登录时,该客户端应用100所处的客户终端10根据该客户端应用100中初始配置的客户端应用100的应用服务器的地址信息就近访问其所处区域(漫游站点300)内的认证服务器310,并将包括该地址信息、获取授权码的信息和客户端应用100的应用ID一起作为授权请求信息发送至认证服务器310,并将客户端应用100的用户归属地标识信息发送给认证服务器310,即客户终端10向认证服务器310发送该客户端应用100的登录请求。认证服务器310接收来自客户终端10的登录请求,通过该登录请求中的授权请求信息对该客户端应用100完成登录认证,并且根据该授权请求信息生成授权信息;认证服务器310通过登录请求中的客户端应用100的用户归属地标识信息可以确定客户端应用100的用户所归属地区的应用服务器为应用服务器420,认证服务器310生成该客户端应用100的用户所归属地区的应用服务器200的访问信息,将该授权信息和访问信息发送给客户终端10,客户终端10接收到该访问信息后可以使得客户端应用100根据该访问信息准确地访问其用户归属地区的应用服务器420,以满足隐私合规要求,有效地提高了用户的隐私安全。并且客户终端10将授权信息发送给应用服务器420,使得应用服务器420可以根据该授权信息完成对客户端应用100的认证。
需要说明的是,认证服务器310具体可以是在对该客户端应用100完成认证后,再去生成并发送该访问信息,若认证未通过,则可以不用生成该访问信息。
进一步地,认证服务器310对该客户端应用100进行认证,具体可以是通过授权信息进行认证,比如通过该授权请求信息中的客户端应用的应用ID判断该客户端应用是否为合法应用(比如判断是否为本地已注册应用),如是,则认证通过,如否,则认证不通过。
示例性的,认证服务器310根据用户归属地标识信息确定客户端应用100的用户的归属地,并根据在本地配置的归属区域和应用服务器地址的对应关系,确定该客户端应用100的用户所归属区域的应用服务器420的地址信息,生成包括应用服务器420的地址信息的访问信息。具体的,认证服务器310上可以预先配置有归属区域和应用服务器地址的对应关系,具体的其可以通过对应关系表的形式配置(比如新加坡、泰国地区对应的应用服务器的地址为https://as.example.com/cb;英国、德国地区对应的应用服务器的地址为https://eu.example.com/cb),通过用户归属地标识信息可以确定该客户端应用100的用户的归属区域(比如根据用户归属地标识信息确定用户为泰国用户,则其归属地区为泰国),根据在认证服务器本地配置归属区域和应用服务器地址的对应关系,从而可准确地确定该客户端应用100的用户的归属地区的应用服务器420的地址(具体为https://as.example.com/cb),将该地址(https://as.example.com/cb)通过访问信息发给客户端应用100,使得客户端应用100可以准确根据该地址访问其用户归属地区的应用服务器420,以满足隐私合规要求,有效地提高了用户的隐私安全。
示例性的,认证服务器310根据用户归属地标识信息确定客户端应用100的用户的归属地,其中用户归属地标识信息具体可以是用户的账号信息,比如为用户的用户名,认证服务器310根据用户名可以确定该用户名对应的用户的归属地(或注册地)。或者用户归属地标识信息可以是客户端应用的分发渠道或客户端应用所在客户终端的终端信息等,认证服务器310根据客户端应用的分发渠道,确定该客户端应用的来源地,并将其作为客户端应用的用户的归属地;或认证服务器310根据客户端应用所在客户终端的终端信息确定该客户终端的生产地作为客户端应用的用户的归属地。
需要说明的是,具体可以由应用开发者通过开发者管理平台或者应用配置平台向认证服务器上配置归属区域和应用服务器地址的对应关系,且配置时具体需要在该客户端应用100所面向的各区域内的认证服务器上皆配置该对应关系,使得客户端应用100访问其中任意一个应用服务器皆可以实现获取其用户所归属区域的应用服务器的地址。
示例性的,在本实施方式的一种可能的实现中,应用服务器420的地址信息通过回调地址参数配置。通过回调地址参数返回地址信息可以方便地实现地址信息的发送。具体的该回调地址参数可以是edirect_uri=https://as.example.com/cb。
在本实施方式的另一种可能的实现中,应用服务器420的地址信息可以通过定义其他的参数进行配置。
在本实施方式的另一种可能的实现中,该访问信息可以只包括该地址信息,当然其也可以根据需要包括其他用于应用服务器访问的信息。
示例性的,在本实施方式的另一种可能的实现中,访问信息与授权信息合并在作为反馈登录请求的信息中发送。可以通过只发送一个信息即可实现访问信息与授权信息的发送,有效地提高了通信效率。另外,访问信息与授权信息也可以根据需要通过两条信息进行发送。
本实施方式提供的应用登录方法,在客户端应用100就近访问其所在区域内(漫游站点300)内的认证服务器310时,认证服务器310可以通过客户端应用100的用户标识信息确定用户的归属地区,然后将该归属地区对应的该客户端应用100的应用服务器420的地址信息发送给客户终端10,可以使得客户终端10中的客户端应用100根据该地址信息准确地访问其应该访问的区域内的应用服务器420,即即使该客户端应用100漫游至其归属区域以外的区域时(即该客户终端10漫游至用户所归属区域以外的区域),也可以使该客户端应用100准确访问其归属区域内的应用服务器420,以使其符合隐私合规要求。
需要说明的是,若客户端应用100位于其归属区域内,则客户端应用100首次访问的认证服务器即为其归属区域内的认证服务器(即可以是归属站点400中的认证服务器410),并且也可以通过该认证服务器获得其归属区域内的应用服务器的地址信息,访问其归属区域内的应用服务器,以符合隐私合规要求。
进一步地,示例性的,在本实施方式的另一种可能的实现中,客户端应用100为向不同地区的用户提供的多个客户端应用版本中的其中一个版本,比如为面向亚太用户提供的亚太版本,则其初始配置的客户端应用100的应用服务器的地址信息具体可以是比如前述的as.example.com。在客户端应用100进行登录时,该客户端应用100所处的客户终端10根据该客户端应用100中初始配置的客户端应用100的应用服务器的地址信息(即as.example.com)访问亚太地区的认证服务器,然后由亚太地区的认证服务器向该客户终端10返回该客户端应用100的用户所归属区域的应用服务器的访问信息,具体的,若该用户是欧洲地区的用户,则返回欧洲地区的应用服务器的访问信息,若该用户是亚太地区的用户,则返回亚太地区的应用服务器的访问信息。
本实施方式提供的应用登录方法,可以实现用户在客户终端10安装了与用户归属区域不一致的客户端应用版本的情况下,仍能准确确定用户所归属区域内的应用服务器用于该客户端应用100访问,以此可以使得客户端应用100可以准确地访问为满足隐私合规要求其应该访问的应用服务器,以符合隐私合规要求。
需要说明的是,本实施方式提供的应用登录方法,若用户安装了与用户归属区域一致的客户端应用版本,其也仍能准确确定用户所归属区域内的应用服务器用于该客户端应用100访问,以此可以使得客户端应用100可以准确地访问为满足隐私合规要求其应该访问的应用服务器,以符合隐私合规要求。本实施例还提供了一种应用登录方法,应用于认证服务器,可以使得客户端应用可以准确地访问其应该访问的应用服务器,以符合隐私合规要求。
参见图5,图5所示为根据本申请的一实施方式提供的应用登录方法的方法流程图,该方法可用于认证服务器,且该方法具体包括:
S201,接收来自客户端应用的登录请求,登录请求中包括客户端应用的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取登录认证。
S202,根据登录请求生成用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的应用服务器的访问信息,并发送。
示例性的,授权请求信息包括要求获取授权码的信息,初始配置的客户端应用的应用服务器的地址信息和客户端应用的应用ID。
示例性的,在本实施方式的一种可能的实现中,归属地标识信息为可以标识客户端应用100的用户的归属地区的信息,该用户归属地标识信息包括客户端应用的用户的账号信息、客户端应用的分发渠道、客户端请求的源IP地址、客户端应用所在客户终端的终端信息(包括设备的生产/发货地等信息)中的至少一个。
示例性的,在本实施方式的一种可能的实现中,授权信息包括授权码。
示例性的,在本实施方式的一种可能的实现中,认证服务器为根据初始配置的客户端应用的应用服务器的地址信息确定的区域内的认证服务器;且认证服务器所在的区域与用户所归属区域不一致。
具体的,在本实施方式的一种可能的实现中,客户端应用具体可以是图3所示的客户端应用100,认证服务器为漫游站点300中的认证服务器310,客户端应用的用户所归属区域的应用服务器具体可以为归属站点400中的应用服务器420。客户端应用100为全球统一版本,其初始配置的客户端应用100的应用服务器的地址信息具体可以是比如前述的www.example.com。
在客户端应用100进行登录时,则该客户端应用100根据该初始配置的地址就近访问其漫游站点300中的认证服务器310,并将包括该地址信息、获取授权码的信息和客户端应用100的应用ID一起作为授权请求信息发送至认证服务器310,并将客户端应用100的用户归属地标识信息发送给认证服务器310,即客户端应用100向认证服务器310发送登录请求。认证服务器310接收来自客户端应用100的登录请求,通过该登录请求中的授权请求信息对该客户端应用100完成登录认证,并且根据该授权请求信息生成授权信息;认证服务器310通过登录请求中的客户端应用100的用户归属地标识信息可以确定客户端应用100的用户所归属地区的应用服务器为应用服务器420,认证服务器310生成该客户端应用100的用户所归属地区的应用服务器200的访问信息,将该授权信息和访问信息发送给客户端应用100,客户端应用100接收到该访问信息后可以根据该访问信息准确地访问其用户归属地区的应用服务器420,以满足隐私合规要求,有效地提高了用户的隐私安全。并且客户端应用100将授权信息发送给应用服务器420,使得应用服务器420可以根据该授权信息完成对客户端应用100的认证。
需要说明的是,认证服务器310具体可以是在对该客户端应用100完成认证后,再去生成并发送该访问信息,若认证未通过,则可以不用生成该访问信息。
进一步地,认证服务器310对该客户端应用100进行认证,具体可以是通过授权信息进行认证,比如通过该授权请求信息中的客户端应用的应用ID判断该客户端应用是否为合法应用(比如判断是否为本地已注册应用),如是,则认证通过,如否,则认证不通过。
示例性的,认证服务器310根据用户归属地标识信息确定客户端应用100的用户的归属地,并根据在本地配置的归属区域和应用服务器地址的对应关系,确定该客户端应用100的用户所归属区域的应用服务器420的地址信息,生成包括应用服务器420的地址信息的访问信息。具体的,认证服务器310上可以预先配置有归属区域和应用服务器地址的对应关系,具体的其可以通过对应关系表的形式配置(比如新加坡、泰国地区对应的应用服务器的地址为https://as.example.com/cb;英国、德国地区对应的应用服务器的地址为https://eu.example.com/cb),通过用户归属地标识信息可以确定该客户端应用100的用户的归属区域(比如根据用户归属地标识信息确定用户为泰国用户,则其归属地区为泰国),根据在认证服务器本地配置归属区域和应用服务器地址的对应关系,从而可准确地确定该客户端应用100的用户的归属地区的应用服务器420的地址(具体为https://as.example.com/cb),将该地址(https://as.example.com/cb)通过访问信息发给客户端应用100,使得客户端应用100可以准确根据该地址访问其用户归属地区的应用服务器420,以满足隐私合规要求,有效地提高了用户的隐私安全。
示例性的,认证服务器310根据用户归属地标识信息确定客户端应用100的用户的归属地,其中用户归属地标识信息具体可以是用户的账号信息,比如为用户的用户名,认证服务器310根据用户名可以确定该用户名对应的用户的归属地(或注册地)。或者用户归属地标识信息可以是客户端应用的分发渠道或客户端应用所在客户终端的终端信息等,认证服务器310根据客户端应用的分发渠道,确定该客户端应用的来源地,并将其作为客户端应用的用户的归属地;或认证服务器310根据客户端应用所在客户终端的终端信息确定该客户终端的生产地作为客户端应用的用户的归属地。
需要说明的是,具体可以由应用开发者通过开发者管理平台或者应用配置平台向认证服务器上配置归属区域和应用服务器地址的对应关系,且配置时具体需要在该客户端应用100所面向的各区域内的认证服务器上皆配置该对应关系,使得客户端应用100访问其中任意一个应用服务器皆可以实现获取其用户所归属区域的应用服务器的地址。
示例性的,在本实施方式的一种可能的实现中,应用服务器420的地址信息通过回调地址参数配置。通过回调地址参数返回地址信息可以方便地实现地址信息的发送。具体的该回调地址参数可以是edirect_uri=https://as.example.com/cb。
在本实施方式的另一种可能的实现中,应用服务器420的地址信息可以通过定义其他的参数进行配置。
在本实施方式的另一种可能的实现中,该访问信息可以只包括该地址信息,当然其也可以根据需要包括其他用于应用服务器访问的信息。
示例性的,在本实施方式的另一种可能的实现中,访问信息与授权信息合并在作为反馈登录请求的信息中发送。可以通过只发送一个信息即可实现访问信息与授权信息的发送,有效地提高了通信效率。另外,访问信息与授权信息也可以根据需要通过两条信息进行发送。
本实施方式提供的应用登录方法,认证服务器310可以通过客户端应用100的用户标识信息确定用户的归属地区,然后将该归属地区对应的该客户端应用100的应用服务器420的地址信息发送给客户端应用100,可以使得客户端应用100根据该地址信息准确地访问其应该访问的应用服务器420,以使其符合隐私合规要求。
本实施例提供了一种认证服务器,该认证服务器可以使得客户端应用可以准确地访问为满足隐私合规要求其应该访问的应用服务器,以符合隐私合规要求。
参见图6,图6所示为根据本申请的一实施方式提供的认证服务器的结构示意图,该认证服务器包括接收模块511、处理模块512和发送模块513。
在本申请的一种实施方式中,接收模块511用于接收来自客户端应用的登录请求,登录请求中包括客户端应用的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取登录认证;处理模块512用于根据登录请求生成用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的应用服务器的访问信息;发送模块513用于发送授权信息和访问信息。
需要说明的是,上述应用登录方法,可以用于如图6所示的认证服务器中,也可以用于其他可以实现该应用登录方法的认证服务器中。
本实施例还提供了一种应用访问应用服务器的方法,可以使得客户端应用可以准确地访问其应该访问的应用服务器,以符合隐私合规要求。
参见图7,图7所示为根据本申请的另一实施方式提供应用访问应用服务器方法的方法流程图,该方法可以用于客户终端,该方法具体包括:
S301,发送登录请求;登录请求中包括客户端应用的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取登录认证;
S302,接收来自认证服务器的由认证服务器根据登录请求生成的用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的应用服务器的访问信息;
S303,根据授权信息和访问信息访问客户端应用的用户所归属区域的应用服务器。
示例性的,在本实施方式的一种可能的实现中,授权请求信息包括要求获取授权码的信息,初始配置的客户端应用的应用服务器的地址信息和客户端应用的应用ID。
示例性的,在本实施方式的一种可能的实现中,归属地标识信息为可以标识客户端应用100的用户的归属地区的信息,该用户归属地标识信息包括客户端应用的用户的账号信息、客户端应用的分发渠道、客户端请求的源IP地址、客户端应用所在客户终端的终端信息(包括设备的生产/发货地等信息)中的至少一个。
示例性的,在本实施方式的一种可能的实现中,授权信息包括授权码。
示例性的,在本实施方式的一种可能的实现中,认证服务器为根据初始配置的客户端应用的应用服务器的地址信息确定的区域内的认证服务器;且认证服务器所在的区域与用户所归属区域不一致。
在本实施方式的一种可能的实现中,客户端应用具体可以是图3所示的客户端应用100,认证服务器为认证服务器310,客户端应用的用户所归属区域的应用服务器具体可以为应用服务器420。客户端应用100为全球统一版本,其初始配置的客户端应用100的应用服务器的地址信息具体可以是比如前述的www.example.com。
在客户端应用100进行登录时,则该客户端应用100根据该初始配置的地址就近访问其漫游站点300中的认证服务器310,并将包括该地址信息、获取授权码的信息和客户端应用100的应用ID一起作为授权请求信息发送至认证服务器310,并将客户端应用100的用户归属地标识信息发送给认证服务器310,即客户端应用100向认证服务器310发送登录请求。认证服务器310接收来自客户端应用100的登录请求,通过该登录请求中的授权请求信息对该客户端应用100完成登录认证,根据登录请求中的授权请求信息生成授权信息,并且认证服务器310通过登录请求中的客户端应用100的用户归属地标识信息可以确定客户端应用100的用户所归属地区的应用服务器为应用服务器420,认证服务器310生成该客户端应用100的用户所归属地区的应用服务器200的访问信息,将该授权信息和访问信息发送给客户端应用100,客户端应用100接收到该访问信息和授权信息后可以根据该访问信息准确地访问其用户归属地区的应用服务器420,以满足隐私合规要求,有效地提高了用户的隐私安全。并且客户端应用100将授权信息发送给应用服务器420,使得应用服务器420可以根据该授权信息完成对客户端应用100的认证。
示例性的,认证服务器310根据用户归属地标识信息确定客户端应用100的用户的归属地,并根据在本地配置的归属区域和应用服务器地址的对应关系,确定该客户端应用100的用户所归属区域的应用服务器420的地址信息,生成包括应用服务器420的地址信息的访问信息。认证服务器310上可以预先配置有归属区域和应用服务器地址的对应关系,具体的其可以通过对应关系表的形式配置(比如新加坡、泰国地区对应的应用服务器的地址为https://as.example.com/cb;英国、德国地区对应的应用服务器的地址为https://eu.example.com/cb),通过用户归属地标识信息可以确定该客户端应用100的用户的归属区域(比如用户为泰国用户,则其归属地区为泰国),根据在认证服务器本地配置归属区域和应用服务器地址的对应关系,从而可准确地确定该客户端应用100的用户的归属地区的应用服务器420的地址(具体为https://as.example.com/cb),将该地址(https://as.example.com/cb)通过访问信息发给客户端应用100,使得客户端应用100可以准确根据该地址访问其用户归属地区的应用服务器420,以满足隐私合规要求,有效地提高了用户的隐私安全。
示例性的,在本实施方式的一种可能的实现中,应用服务器420的地址信息通过回调地址参数配置。通过回调地址参数返回地址信息可以方便地实现地址信息的发送。具体的该回调地址参数可以是edirect_uri=https://as.example.com/cb。
在本实施方式的一种可能的实现中,应用服务器420的地址信息可以通过定义其他参数进行配置。
在本实施方式的另一种可能的实现中,该访问信息可以只包括该地址信息,当然其也可以根据需要包括其他用于应用服务器访问的信息。
示例性的,访问信息与授权信息合并在作为反馈登录请求的信息中发送。即客户端应用100只接收一个信息,有效地提高了通信效率。另外,访问信息与授权信息也可以根据需要通过两条信息进行发送。
本实施方式提供的应用访问应用服务器的方法,认证服务器310可以通过客户端应用100的用户标识信息确定用户的归属地区,然后将该归属地区对应的该客户端应用100的应用服务器420的地址信息发送给客户端应用100,可以使得客户端应用100根据该地址信息准确访问应用服务器420,以使其符合隐私合规要求。
本实施例提供了一种客户终端,该客户终端可以使得客户端应用可以准确地访问其应该访问的应用服务器,以符合隐私合规要求。
参见图8,图8所示为根据本申请的另一实施方式提供的客户终端的结构示意图,该客户终端包括发送模块611、接收模块612和访问处理模块613。
在本实施方式的一种可能的实现中,发送模块611用于发送登录请求;登录请求中包括客户端应用的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取登录认证;接收模块612用于接收来自认证服务器的由认证服务器根据登录请求生成的用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的应用服务器的访问信息;访问处理模块613用于根据授权信息和访问信息访问客户端应用的用户所归属区域的应用服务器。
需要说明的是,上述应用访问应用服务器的方法,可以用于如图8所示的客户终端中,也可以用于其他可以实现该应用访问应用服务器的方法的客户终端中。
在本申请的一种实施方式中,还提供一种通信系统,示例性的,该通信系统包括前述认证服务器和客户终端。该通信系统中,认证服务器可以通过客户端应用的用户标识信息确定用户的归属地区,然后将该归属地区对应的该客户端应用的应用服务器的地址信息发送给客户终端,可以使得客户终端内的客户端应用可以根据该地址信息准确访问应用服务器,以使其符合隐私合规要求。
另外,当前,越来越多的客户端应用支持另一客户端应用的登录和授权操作,当另一客户端应用使用客户端应用提供的账号信息登录时,为符合隐私合规要求,另一客户端应用应当访问该客户端应用的用户归属地区内用于该另一应用访问的应用服务器,但是当前无法准确确定该另一客户端应用应该访问的应用服务器。
请参见图9,图9为根据本申请的一实施方式提供的又一种应用登录及应用访问应用服务器的场景图,示例性的,在该场景下,客户端应用的登录和认证系统包括客户终端10(客户终端10上布置有客户端应用100和另一客户端应用200)、漫游站点300和归属站点400,其中,漫游站点300中部署有认证服务器310,归属站点400中部署有应用服务器420(该应用服务器为用于另一客户端应用的应用服务器)。进一步地,漫游站点300中还可以部署有应用服务器320(该应用服务器为用于另一客户端应用的应用服务器),归属站点400中还可以部署有认证服务器410。其中归属站点400为另一客户端应用200为符合隐私合规要求,实际需要访问的区域,漫游站点300为另一客户端应用200在进行登录时,访问的该实际需要访问的区域以外的区域。
示例性的,另一客户端应用200的全球版本统一,且预置有统一的应用服务器地址。另一客户端应用200通过客户端应用100进行单点登录时,另一客户端应用200向客户端应用100发送授权请求,授权请求中包括另一客户端应用200中预先配置的应用服务器的地址信息等信息,客户终端10根据该地址就近访问漫游站点300的认证服务器310,将该授权请求发送至认证服务器310进行认证,此时认证服务器310上只有漫游站点300区域内的应用服务器320的地址,因此认证服务器310在需要向另一客户端应用200返回应用服务器的地址时,返回的为漫游站点300中的应用服务器320的地址,使得另一客户端应用200不能准确访问其归属的归属站点400中的应用服务器420,从而存在隐私合规风险。
需要说明的是,前述客户端应用100和另一客户端应用200可以理解为两个不同的客户端应用,或者为便于理解,可以将客户端应用100理解为第一客户端应用,将另一客户端应用200理解为第二客户端应用。
本实施例还提供了一种应用登录方法,该应用登录方法可以使得该另一客户端应用可以准确地访问为满足隐私合规要求其应该访问的应用服务器,以符合隐私合规要求。
参见图10,图10所示为根据本申请的一实施方式提供的应用登录方法的方法流程图,且该方法具体包括:
S401,客户终端发送登录请求;登录请求中包括在客户终端中执行的另一客户端应用以在客户终端中执行的客户端应用的用户登录的授权请求信息以及客户端应用的用户归属地标识信息。
S402,认证服务器接收登录请求;根据登录请求生成用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的用于另一客户端应用的应用服务器的访问信息;将授权信息和访问信息发送给客户终端。
S403,客户终端接收授权信息和访问信息,并将授权信息和访问信息经由客户端应用发送至另一客户端应用,以使另一客户端应用根据授权信息和访问信息访问用于另一客户端应用的应用服务器。
示例性的,授权请求信息包括要求获取授权码的信息,初始配置的另一客户端应用的服务器的地址信息和客户端应用的应用ID。
示例性的,在本实施方式的一种可能的实现中,归属地标识信息为可以标识客户端应用100的用户的归属地区的信息,该用户归属地标识信息包括客户端应用的用户的账号信息、客户端应用的分发渠道、客户端请求的源IP地址、客户端应用所在客户终端的终端信息(包括设备的生产/发货地等信息)中的至少一个。
示例性的,在本实施方式的一种可能的实现中,授权信息包括授权码。
示例性的,认证服务器为根据初始配置的另一客户端应用的应用服务器的地址信息确定的区域内的认证服务器;且认证服务器所在的区域与用户所归属区域不一致。
具体的,在本实施方式的一种可能的实现中,客户端应用具体可以是上述的客户端应用100,另一客户端应用具体可以是上述的另一客户端应用200,另一客户端应用200位于其归属区域以外的其他漫游区域,认证服务器为认证服务器310(认证服务器310为另一客户端应用200所处区域内的认证服务器,即漫游站点300内的认证服务器),另一客户端应用200的用户所归属区域的应用服务器具体可以为应用服务器420。另一客户端应用200为全球统一版本,其初始配置的另一客户端应用200的应用服务器的地址信息具体可以是比如前述的www.example.com。
在另一客户端应用200进行登录时,另一客户端应用200向客户端应用100发起一请求,并将包括该地址信息、获取授权码的信息和另一客户端应用200的应用ID一起作为授权请求信息发送至客户端应用100。客户端应用100接收到该授权请求信息后,该客户端应用100和另一客户端应用200所处的客户终端10根据该初始配置的地址就近访问其漫游站点300中的认证服务器310,并将该授权请求信息发送至认证服务器310,且将客户端应用100的用户归属地标识信息发送给认证服务器310,也可以理解为客户端应用100向认证服务器310发送登录请求。认证服务器310接收来自客户终端10(客户端应用100)的登录请求,通过该登录请求中的授权请求信息对该另一客户端应用200完成登录认证,根据登录请求中的授权请求信息生成授权信息;并且认证服务器310通过登录请求中的客户端应用100的用户归属地标识信息可以确定客户端应用100的用户所归属地区的用于另一客户端应用200的应用服务器为应用服务器420,认证服务器310生成该应用服务器200的访问信息,将该授权信息和访问信息发送给客户终端10(客户端应用100),客户终端10(客户端应用100)将该授权信息和访问信息发送给另一客户端应用200,另一客户端应用200接收到该访问信息后可以根据该访问信息准确地访问其应该访问地区的应用服务器420,以满足隐私合规要求,有效地提高了用户的隐私安全。并且另一客户端应用200通过该客户终端10将授权信息发送给应用服务器420,使得应用服务器420可以根据该授权信息完成对另一客户端应用200的认证。
需要说明的是,认证服务器310具体可以是在对该另一客户端应用200完成认证后,再去生成并发送该访问信息,若认证未通过,则可以不用生成该访问信息。
示例性的,认证服务器310根据用户归属地标识信息确定客户端应用100的用户的归属地,并根据在本地配置的归属区域和应用服务器地址的对应关系,确定该客户端应用100的用户所归属区域的应用服务器420的地址信息,生成包括应用服务器420的地址信息的访问信息。认证服务器310上可以预先配置有归属区域和应用服务器地址的对应关系,具体的其可以通过对应关系表的形式配置(比如新加坡、泰国地区对应的应用服务器的地址为https://as.example.com/cb;英国、德国地区对应的应用服务器的地址为https://eu.example.com/cb),通过用户归属地标识信息可以确定该客户端应用100的用户的归属区域(比如用户为泰国用户,则其归属地区为泰国),根据在认证服务器本地配置归属区域和应用服务器地址的对应关系,从而可准确地确定该客户端应用100的用户的归属地区的应用服务器420的地址(具体为https://as.example.com/cb),将该地址(https://as.example.com/cb)通过访问信息发给另一客户端应用200,使得另一客户端应用200可以准确根据该地址访问其应该访问地区的应用服务器420,以满足隐私合规要求,有效地提高了用户的隐私安全。
需要说明的是,具体可以由应用开发者通过开发者管理平台或者应用配置平台向认证服务器上配置归属区域和应用服务器地址的对应关系,且配置时具体需要在该另一客户端应用200所面向的各区域内的认证服务器上配置该对应关系,使得客户端应用100访问其中任意一个应用服务器皆可以实现获取其另一客户端应用200应该访问区域的应用服务器的地址。
示例性的,在本实施方式的一种可能的实现中,应用服务器420的地址信息通过回调地址参数配置。通过回调地址参数返回地址信息可以方便地实现地址信息的发送。具体的该回调地址参数可以是edirect_uri=https://as.example.com/cb。
在另一种实现方式中,应用服务器420的地址信息可以通过重新定义一个参数进行配置。
在本实施方式的另一种可能的实现中,应用服务器420的地址信息可以通过定义其他的参数进行配置。
在本实施方式的另一种可能的实现中,该访问信息可以只包括该地址信息,当然其也可以根据需要包括其他用于应用服务器访问的信息。
示例性的,在本实施方式的另一种可能的实现中,访问信息与授权信息合并在作为反馈登录请求的信息中发送。可以通过只发送一个信息即可实现访问信息与授权信息的发送,有效地提高了通信效率。另外,访问信息与授权信息也可以根据需要通过两条信息进行发送。
本实施方式提供的应用登录方法,在另一客户端应用200就近访问其所在区域内(漫游站点300)内的认证服务器310时,认证服务器310可以通过该客户端应用100的用户标识信息确定用户的归属地区,然后将该归属地区对应的该另一客户端应用200的应用服务器420的地址信息发送给另一客户端应用200,可以使得另一客户端应用200根据该地址信息准确访问应用服务器420,即即使该另一客户端应用200漫游至其归属区域以外的区域时(即该客户终端10漫游至用户所归属区域以外的区域),也可以使该另一客户端应用200准确访问其归属区域内的应用服务器420,以使其符合隐私合规要求。
需要说明的是,若另一客户端应用200位于其归属区域内,则客户终端10首次访问的认证服务器即为其归属区域内的认证服务器(即可以是归属站点400中的认证服务器410),并且也可以通过该认证服务器获得其归属区域内的应用服务器的地址信息,访问其归属区域内的应用服务器,以符合隐私合规要求。
进一步地,示例性的,在本实施方式的另一种可能的实现中,该另一客户端应用200为向不同地区的用户提供的多个另一客户端应用版本中的其中一个版本,比如为面向亚太用户提供的亚太版本,其初始配置的另一客户端应用200的应用服务器的地址信息具体可以是比如前述的as.example.com。在另一客户端应用200进行登录时,该另一客户端应用200所处的客户终端10根据该另一客户端应用200中初始配置的另一客户端应用200的应用服务器的地址信息(即as.example.com)访问亚太地区的认证服务器,然后由亚太地区的认证服务器向该客户终端10返回该客户端应用100的用户所归属区域的应用服务器的访问信息,具体的,若该用户是亚太地区的用户,则返回亚太地区的应用服务器的访问信息,若该用户是欧洲地区的用户,则返回欧洲地区的应用服务器的访问信息。
本实施方式提供的应用登录方法,可以实现用户在客户终端10安装了与用户归属区域不一致的该另一客户端应用版本的情况下,以及在该另一客户端应用200漫游至其他区域的情况下,仍能准确确定用户所归属区域内的应用服务器用于该另一客户端应用200访问,以此可以使得该另一客户端应用200可以准确地访问为满足隐私合规要求其应该访问的应用服务器,以符合隐私合规要求。
需要说明的是,本实施方式提供的应用登录方法,若用户安装了与用户归属区域一致的另一客户端应用版本,其也仍能准确确定用户所归属区域内的应用服务器用于该另一客户端应用200访问,以此可以使得另一客户端应用200可以准确地访问为满足隐私合规要求其应该访问的应用服务器,以符合隐私合规要求。
本申请提供了一种应用登录方法,应用于认证服务器,可以使得另一客户端应用可以准确地访问其应该访问的应用服务器,以符合隐私合规要求。
参见图11,图11所示为根据本申请的一实施方式提供的应用登录方法的方法流程图,可应用于认证服务器,具体包括:
S501,接收来自客户端应用的登录请求,登录请求中包括另一客户端应用以客户端应用的用户登录的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取另一客户端应用以客户端应用的用户登录的登录认证;
S502,根据登录请求生成用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属区域的用于另一客户端应用的应用服务器的访问信息,并经由客户端应用发送至另一客户端应用。
示例性的,授权请求信息包括要求获取授权码的信息,初始配置的另一客户端应用的服务器的地址信息和客户端应用的应用ID。
示例性的,在本实施方式的一种可能的实现中,归属地标识信息为可以标识客户端应用100的用户的归属地区的信息,该用户归属地标识信息包括客户端应用的用户的账号信息、客户端应用的分发渠道、客户端请求的源IP地址、客户端应用所在客户终端的终端信息(包括设备的生产/发货地等信息)中的至少一个。
示例性的,在本实施方式的一种可能的实现中,授权信息包括授权码。
示例性的,认证服务器为根据初始配置的另一客户端应用的应用服务器的地址信息确定的区域内的认证服务器;且认证服务器所在的区域与用户所归属区域不一致。
具体的,在本实施方式的一种可能的实现中,客户端应用具体可以是上述的客户端应用100,另一客户端应用具体可以是上述的另一客户端应用200,认证服务器为认证服务器310,客户端应用的用户所归属区域的应用服务器具体可以为应用服务器420。客户端应用100为全球统一版本,其初始配置的客户端应用100的应用服务器的地址信息具体可以是比如前述的www.example.com。
在另一客户端应用200进行登录时,另一客户端应用200向客户端应用100发起一请求,并将包括该地址信息、获取授权码的信息和另一客户端应用200的应用ID一起作为授权请求信息发送至客户端应用100。客户端应用100接收到该授权请求信息后,根据该初始配置的地址就近访问其漫游站点300中的认证服务器310,并将该授权请求信息发送至认证服务器310,且将客户端应用100的用户归属地标识信息发送给认证服务器310,即客户端应用100向认证服务器310发送登录请求。认证服务器310接收来自客户端应用100的登录请求,通过该登录请求中的授权请求信息对该另一客户端应用200完成登录认证,根据登录请求中的授权请求信息生成授权信息;并且认证服务器310通过登录请求中的客户端应用100的用户归属地标识信息可以确定客户端应用100的用户所归属地区的用于另一客户端应用200的应用服务器为应用服务器420,认证服务器310生成该应用服务器200的访问信息,将该授权信息和访问信息发送给客户端应用100,客户端应用100将该授权信息和访问信息转发给另一客户端应用200,另一客户端应用200接收到该访问信息后可以根据该访问信息准确地访问其应该访问地区的应用服务器420,以满足隐私合规要求,有效地提高了用户的隐私安全。并且另一客户端应用200将授权信息发送给应用服务器420,使得应用服务器420可以根据该授权信息完成对另一客户端应用200的认证。
需要说明的是,认证服务器310具体可以是在对该另一客户端应用200完成认证后,再去生成并发送该访问信息,若认证未通过,则可以不用生成该访问信息。
示例性的,认证服务器310根据用户归属地标识信息确定客户端应用100的用户的归属地,并根据在本地配置的归属区域和应用服务器地址的对应关系,确定该客户端应用100的用户所归属区域的应用服务器420的地址信息,生成包括应用服务器420的地址信息的访问信息。认证服务器310上可以预先配置有归属区域和应用服务器地址的对应关系,具体的其可以通过对应关系表的形式配置(比如新加坡、泰国地区对应的应用服务器的地址为https://as.example.com/cb;英国、德国地区对应的应用服务器的地址为https://eu.example.com/cb),通过用户归属地标识信息可以确定该客户端应用100的用户的归属区域(比如用户为泰国用户,则其归属地区为泰国),根据在认证服务器本地配置归属区域和应用服务器地址的对应关系,从而可准确地确定该客户端应用100的用户的归属地区的应用服务器420的地址(具体为https://as.example.com/cb),将该地址(https://as.example.com/cb)通过访问信息发给另一客户端应用200,使得另一客户端应用200可以准确根据该地址访问其应该访问地区的应用服务器420,以满足隐私合规要求,有效地提高了用户的隐私安全。
需要说明的是,具体可以由应用开发者通过开发者管理平台或者应用配置平台向认证服务器上配置归属区域和应用服务器地址的对应关系,且配置时具体需要在该另一客户端应用200所面向的各区域内的认证服务器上配置该对应关系,使得客户端应用100访问其中任意一个应用服务器皆可以实现获取其另一客户端应用200应该访问区域的应用服务器的地址。
示例性的,在本实施方式的一种可能的实现中,应用服务器420的地址信息通过回调地址参数配置。通过回调地址参数返回地址信息可以方便地实现地址信息的发送。具体的该回调地址参数可以是edirect_uri=https://as.example.com/cb。
在另一种实现方式中,应用服务器420的地址信息可以通过重新定义一个参数进行配置。
在本实施方式的另一种可能的实现中,应用服务器420的地址信息可以通过定义其他的参数进行配置。
在本实施方式的另一种可能的实现中,该访问信息可以只包括该地址信息,当然其也可以根据需要包括其他用于应用服务器访问的信息。
示例性的,在本实施方式的另一种可能的实现中,访问信息与授权信息合并在作为反馈登录请求的信息中发送。可以通过只发送一个信息即可实现访问信息与授权信息的发送,有效地提高了通信效率。另外,访问信息与授权信息也可以根据需要通过两条信息进行发送。
本实施方式提供的应用登录方法,认证服务器310可以通过客户端应用100的用户标识信息确定用户的归属地区,然后将该归属地区对应的该另一客户端应用200的应用服务器420的地址信息发送给另一客户端应用200,可以使得另一客户端应用200根据该地址信息准确访问应用服务器420,以使其符合隐私合规要求。
本实施例提供了一种认证服务器,该认证服务器可以使得另一客户端应用可以准确地访问其应该访问的应用服务器,以符合隐私合规要求。
参见图12,图12所示为根据本申请的一实施方式提供的一种认证服务器的结构示意图,该认证服务器包括接收模块711、处理模块712和发送模块713。
在本申请的一种实施方式中,接收模块711用于接收来自客户端应用的登录请求,登录请求中包括另一客户端应用以客户端应用的用户登录的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取另一客户端应用以客户端应用的用户登录的登录认证;处理模块712用于根据登录请求生成用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属地区的用于另一客户端应用的应用服务器的访问信息;发送模块713用于经由客户端应用将授权信息和访问信息发送至另一客户端应用。
需要说明的是,上述应用登录方法,可以用于如图12所示的认证服务器中,也可以用于其他可以实现该应用登录方法的认证服务器中。
本实施例还提供了一种应用访问应用服务器的方法,可以使得另一客户端应用可以准确地访问其应该访问的应用服务器,以符合隐私合规要求。
请参见图13,图13所示为根据本申请的另一实施方式提供应用访问应用服务器方法的方法流程图,可应用于客户终端,具体包括:
S601,发送登录请求;登录请求中包括另一客户端应用以客户端应用的用户登录的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取另一客户端应用以客户端应用的用户登录的登录认证;
S602,接收来自认证服务器的由认证服务器根据登录请求生成的用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属的用于另一客户端应用的应用服务器的访问信息;
S603,将授权信息和访问信息转发至另一客户端应用以使另一客户端应用根据授权信息和访问信息访问用于另一客户端应用的应用服务器。
示例性的,在本实施方式的一种可能的实现中,授权请求信息包括要求获取授权码的信息,初始配置的另一客户端应用的服务器的地址信息和客户端应用的应用ID。
示例性的,在本实施方式的一种可能的实现中,归属地标识信息为可以标识客户端应用100的用户的归属地区的信息,该用户归属地标识信息包括客户端应用的用户的账号信息、客户端应用的分发渠道、客户端请求的源IP地址、客户端应用所在客户终端的终端信息(包括设备的生产/发货地等信息)中的至少一个。
示例性的,在本实施方式的一种可能的实现中,授权信息包括授权码。
示例性的,认证服务器为根据初始配置的另一客户端应用的应用服务器的地址信息确定的区域内的认证服务器;且认证服务器所在的区域与用户所归属区域不一致。
在本实施方式的一种可能的实现中,客户端应用具体可以是上述的客户端应用100,另一客户端应用具体可以是上述的另一客户端应用200,认证服务器为认证服务器310,客户端应用的用户所归属区域的应用服务器具体可以为应用服务器420。客户端应用100为全球统一版本,其初始配置的客户端应用100的应用服务器的地址信息具体可以是比如前述的www.example.com。
在另一客户端应用200进行登录时,另一客户端应用200向客户端应用100发起一请求,并将包括该地址信息、获取授权码的信息和另一客户端应用200的应用ID一起作为授权请求信息发送至客户端应用100。客户端应用100接收到该授权请求信息后,根据该初始配置的地址就近访问其漫游站点300中的认证服务器310,并将包括该授权请求信息发送至认证服务器310,并将客户端应用100的用户归属地标识信息发送给认证服务器310,即客户端应用100向认证服务器310发送登录请求。认证服务器310接收来自客户端应用100的登录请求,通过该登录请求中的授权请求信息对该另一客户端应用200完成登录认证,通过登录请求中的客户端应用100的用户归属地标识信息可以确定客户端应用100的用户所归属地区的用于另一客户端应用200的应用服务器为应用服务器420,认证服务器310生成该应用服务器200的访问信息,并且认证服务器310根据登录请求中的授权请求信息生成授权信息,将该授权信息和访问信息发送至客户端应用100,客户端应用100将该授权信息和访问信息转发给另一客户端应用200,另一客户端应用200接收到该访问信息后可以根据该访问信息准确地访问为满足隐私合规要求应该访问的应用服务器420,以满足隐私合规要求,有效地提高了用户的隐私安全。
示例性的,认证服务器310根据用户归属地标识信息确定客户端应用100的用户的归属地,并根据在本地配置的归属区域和应用服务器地址的对应关系,确定该客户端应用100的用户所归属区域的应用服务器420的地址信息,生成包括应用服务器420的地址信息的访问信息。认证服务器310上可以预先配置有归属区域和应用服务器地址的对应关系,具体的其可以通过对应关系表的形式配置(比如新加坡、泰国地区对应的应用服务器的地址为https://as.example.com/cb;英国、德国地区对应的应用服务器的地址为https://eu.example.com/cb),通过用户归属地标识信息可以确定该客户端应用100的用户的归属区域,根据在认证服务器本地配置归属区域和应用服务器地址的对应关系,从而可准确地确定该客户端应用100的用户的归属地区的应用服务器420的地址,将该地址通过访问信息发给另一客户端应用200,使得另一客户端应用200可以准确根据该地址访问其应该访问地区的应用服务器420,以满足隐私合规要求,有效地提高了用户的隐私安全。
示例性的,在本实施方式的一种可能的实现中,应用服务器420的地址信息通过回调地址参数配置。通过回调地址参数返回地址信息可以方便地实现地址信息的反馈。具体的该回调地址参数可以是edirect_uri=https://as.example.com/cb。
在本实施方式的一种可能的实现中,应用服务器420的地址信息可以通过重新定义一个参数进行配置。
示例性的,访问信息与授权信息合并在作为反馈登录请求的信息中发送。即另一客户端应用200只接收一个信息,有效地提高了通信效率。另外,访问信息与授权信息也可以根据需要通过两条信息进行发送。
本实施方式提供的应用访问应用服务器的方法,认证服务器310可以通过客户端应用100的用户标识信息确定用户的归属地区,然后将该归属地区对应的该另一客户端应用200的应用服务器420的地址信息发送给另一客户端应用200,可以使得另一客户端应用200根据该地址信息准确访问应用服务器420,以使其符合隐私合规要求。
本实施例提供了一种客户终端,该客户终端可以使得另一客户端应用可以准确地访问其应该访问的应用服务器,以符合隐私合规要求。
参见图14,图14所示为根据本申请的另一实施方式提供的客户终端的结构示意图,该客户终端包括发送模块811、接收模块812和访问处理模块813。
在本实施方式的一种可能的实现中,发送模块610用于发送登录请求;登录请求中包括另一客户端应用以客户端应用的用户登录的授权请求信息以及客户端应用的用户归属地标识信息,其中,授权请求信息用于向认证服务器获取另一客户端应用以客户端应用的用户登录的登录认证;接收模块620用于接收来自认证服务器的由认证服务器根据登录请求生成的用于响应于授权请求信息的授权信息,以及基于用户归属地标识信息确认的客户端应用的用户所归属的用于另一客户端应用的应用服务器的访问信息;访问处理模块630用于将授权信息和访问信息转发至另一客户端应用以使另一客户端应用根据授权信息和访问信息访问用于另一客户端应用的应用服务器。
需要说明的是,上述应用访问应用服务器的方法,可以用于如图14所示的客户终端中,也可以用于其他可以实现该应用访问应用服务器的方法的客户终端中。
本申请的另一实施方式还提供一种通信系统,包括前述认证服务器和客户终端。该通信系统中,认证服务器可以通过客户端应用的用户标识信息确定用户的归属地区,然后将该用户归属地区对应的另一客户端应用的应用服务器的地址信息发送给另一客户端应用,可以使得客户端应用根据该地址信息准确访问应用服务器,以使其符合隐私合规要求。
对于另一客户端应用使用客户端应用提供的账号信息登录的场景,其具体可以是使用OAuth2.0标准实现使用客户端应用的帐号系统实现单点登录,在客户端应用的系统中,其用户已经有了明确的归属地区,按照隐私合规要求,另一客户端应用应当访问该用户归属地区的应用服务器。但是目前的OAuth2.0的标准流程中的授权码登录模式,由于需要另一客户端应用将从客户端应用获取的授权码上报给客户端应用的用户归属地区的用于另一客户端应用访问的应用服务器,但此时却无法获取用户的归属地区,因而也就无法知道应该访问哪个地区的应用服务器。
参见图15,图15为本实施例一种实施方式中应用登录及访问应用服务器的场景图,其场景具体为使用OAuth2.0标准实现单点登录的场景,在该场景下,包括客户终端10,客户终端10上配置有客户端应用100(为提供基于OAuth2.0标准登录的客户端应用)、另一客户端应用200、漫游站点300、归属站点400、应用开发者500和应用配置平台600,其中,漫游站点300中部署有认证服务器310(提供基于OAuth2.0标准的认证)和应用服务器320(具体为与另一客户端应用200对应的应用服务器),归属站点400中部署有认证服务器410(提供基于OAuth2.0标准的认证)和应用服务器420(具体为与另一客户端应用200对应的应用服务器)。应用开发者500在应用配置平台600上注册包括另一客户端应用200的应用,并在应用配置平台500上配置包括归属地区和归属地应用服务器地址的对应关系(映射关系)。然后由应用配置平台600将该归属地区和应用服务器的对应关系配置到其面向区域的各个认证服务器上,比如认证服务器310和认证服务器410上。其中归属站点400为另一客户端应用200为符合隐私合规要求,实际需要访问的区域,漫游站点300为另一客户端应用200在进行登录时,访问的该实际需要访问的区域以外的区域。
具体的,本实施方式中,应用开发者500在配置使用OAuth2.0登录时,在认证服务器310和认证服务器410上通过配置路由表的方式配置归属地区和应用服务器的地址对应关系,具体的,增加配置返回服务器地址的路由配置参数,路由配置参数即为归属地区和应用服务器的地址对应关系,其中路由配置参数包括两个部分:路由条件和应用服务器地址,该路由条件具体可以是用户的归属地区。在OAuth2.0的交互流程中,根据路由配置参数的规则,返回应用服务器地址给另一客户端应用200,应用服务器地址可以为应用服务器域名。
进一步地,本实施方式中,访问信息具体可以为redirect_uri参数,授权信息具体为授权码Code。
在本实施方式的一种可能的实现中,对OAuth2.0标准进行扩展,将标准定义的一个redirect_uri参数扩展到可以配置多个redirect_uri参数,并指定不同redirect_uri对应的国家/地区列表。当另一客户端应用使用OAuth2.0登录时,认证服务器在返回授权Code时,根据登录用户的国家/地区信息,使用对应的redirect_uri回调给另一客户端应用200,另一客户端应用200以redirect_uri作为访问归属站点400中的应用服务器420的地址。
参见图16,图16所示为根据本申请的一实施方式提供的应用登录和访问应用服务器的方法的时序图,该方法具体包括:
S701,应用开发者500在应用配置平台600上注册另一客户端应用200,并在应用配置平台600上配置路由条件和应用服务器的地址的对应关系。
具体的,在配置redirect_uri时,可以配置多个redirect_uri,并指定在什么条件下,使用哪个redirect_uri。例如,将授权用户(客户端应用100的用户)的帐号归属地国家/地区作为路由条件,下面以json格式为例子说明该路由表的格式:
“routelist”:[{“redirect_uri”:”https://as.example.com/cb”,“countries”:[“SG”,”TH”,”IN”,”MY”]},{“redirect_uri”:”https://eu.example.com/cb”,“countries”:[“GB”,”DE”,”GR”,”FR”]}]
对于帐号归属地国家为新加坡(SG)、泰国(TH)、印度(IN)、马来西亚(MY)的,对应的redirect_uri为https://as.example.com/cb;对于帐号归属地为英国(GB)、德国(DE)、希腊(GR)、法国(FR)的,对应的redirect_uri为https://eu.example.com/cb。
进一步地,应用开发者使用OAuth2.0标准接入开放的应用配置平台(授权平台)时,除了需要在应用配置平台上配置回调地址(redirect_uri),还需要配置其他如应用名称、应用图标、应用申请的授权范围、应用的证书指纹(移动APP)等接入应用的信息,其皆可根据需要具体设置。
S702,应用配置平台600将该路由条件和应用服务器的地址的对应关系下发至不同站点的认证服务器(具体如OAuth Server),且本实施方式中具体可以是下发至认证服务器310和认证服务器320。
S703,另一客户端应用200向客户端应用100发送授权请求。
具体的,另一客户端应用200向客户端应用100发送包括授权请求获取授权码的信息,初始配置的另一客户端应用的应用服务器的地址信息和另一客户端应用的应用ID的授权请求信息。
该授权请求具体可以是HTTP请求,具体的,该HTTP(HyperText TransferProtocol,超文本传输协议)请求的格式具体如下所示:
GET
/authorize?response_type=code&client_id=s6BhdRkqt3&state=xyz&redirect_uri=https://as.example.com/cb HTTP/1.1
Host:server.example.com
其中,授权请求获取授权码的信息具体为response_type=code,初始配置的另一客户端应用的应用服务器的地址信息为redirect_uri=https://as.example.com/cb,另一客户端应用的应用ID为client_id=s6BhdRkqt3。
进一步地,该授权请求信息具体可以是发送给客户端应用100对应的授权SDK(Software Development Kit,软件开发工具包)。
S704,客户端应用100接收到该授权请求后,根据该授权请求访问认证服务器310,具体为生成包括该授权请求信息和其自身的用户账号信息的登录请求发送给认证服务器310。该登录请求具体也可以是HTTP请求。
S705,认证服务器310接收到该登录请求,根据该授权请求完成认证,并生成code,并且根据该用户账号信息确定该另一客户端应用200应该访问地区的应用服务器的地址对应的回调地址参数。
具体的,当执行授权时,如果当前授权的用户帐号归属地为英国(GB),则授权服务器在返回code给调用者时,会将对应配置的redirect_uri返回给调用者,即https://eu.example.com/cb。
S706,认证服务器310将code和回调地址参数发送至客户端应用100。
具体的,code和回调地址参数具体可以通过HTTP响应消息发送,其具体格式如下:
HTTP/1.1302Found
Location:
https://eu.example.com/cb?code=SplxlOBeZQQYbYS6WxSbIA&state=xyz
具体的,回调地址参数信息为https://eu.example.com/cb,code信息为code=SplxlOBeZQQYbYS6WxSbIA。
S707,客户端应用100将code和回调地址参数发送给另一客户端应用200。
S708,另一客户端应用200通过该回调地址参数访问其对应的应用服务器420,并将code发送给应用服务器420。
具体的,当另一客户端应用200获取到归属地的redirect_uri时和Code时,则根据redirect_uri的域名为目的地址,将Code上报给自己的服务器。具体可以通过如下HTTP消息发送:
POST/login?code=SplxlOBeZQQYbYS6WxSbIA HTTP/1.1
Host:eu.example.com
S709,应用服务器420将该code发送至认证服务器410进行认证,请求获取RT、AT信息。认证服务器410完成认证后向应用服务器420返回RT、AT信息。
认证服务器410根据接收到的code在本地完成对该code的认证,以完成对该另一客户端应用200的认证,在认证通过后返回RT、AT信息。
在获取RT、AT的请求中必须填写返回授权code时使用的redirect_uri。此时的HTTP信息具体可以如下:
POST/token HTTP/1.1
Host:server.example.com
Authorization:Basic czZCaGRSa3F0MzpnWDFmQmF0M2JW
Content-Type:application/x-www-form-urlencoded
grant_type=authorization_code&code=SplxlOBeZQQYbYS6WxSbIA&redirect_uri=https://eu.example.com/cb
需要说明的是,应用服务器420将该code发送至认证服务器410进行认证时,还可以发送例如security信息等用于进行认证的信息。
S710,应用服务器420记录该RT、AT信息,并生成业务token。
S711,应用服务器420将业务token发送给另一客户端应用200,以用于另一客户端应用200后续的业务处理操作。
本实施方式,通过扩展OAuth2.0协议,将redirect_uri的定义扩展到可以配置多个,并且针对每个redirect_uri都可以单独配置路由条件,从而达到可以直接获取到路由的应用服务器地址的目的。
需要说明的是,本实施方式的另一种可能的实现中,可以定义另外的新的参数来配置应用服务器的地址信息,例如参数名定义为domain。当返回授权code给另一客户端应用200时,新增返回根据路由条件匹配的domain参数。返回授权code的HTTP响应信息的例子如下:
HTTP/1.1 302Found
Location:
https://client.example.com/cb?code=SplxlOBeZQQYbYS6WxSbIA&state=xyz&domain=https://eu.example.com/cb
需要说明的是,在其他各步骤的处理中,各HTTP信息中除关于应用服务器的地址的参数不同外,其他部分皆可以相同,或者可以根据新定义的参数做相应调整,其可以根据需要具体选择,此处不再赘述。
本实施方式,针对需要在全球多个地区分站点部署服务的场景,可以在各站点内的认证服务器上部署物理区域和应用服务器的地址的对应关系,以确定准确的目标应用服务器的地址,具体的,可以通过对OAuth2.0标准进行扩展,在执行OAuth2.0的授权码流程,在返回Code时,根据路由条件返回目标应用服务器的地址,使得另一客户端应用可以根据该地址访问其满足隐私合规要求的应用服务器,解决了APP全球化多站点部署的路由问题,达到了全球化部署中符合数据保护合规的要求。另外,本实施方式,通过对OAuth2.0标准进行扩展在达到APP准确访问其应用服务器的基础上,还可以有效地减少交互部件和交互流程,提升了交互性能。
参见图17,图17所示为根据本申请的一实施方式提供的电子设备900的结构示意图。电子设备900可以包括耦合到控制器中枢904的一个或多个处理器901。对于至少一个实施例,控制器中枢904经由诸如前端总线(FSB)之类的多分支总线、诸如快速通道互连(QPI)之类的点对点接口、或者类似的连接与处理器901进行通信。处理器901执行控制一般类型的数据处理操作的指令。在一实施例中,控制器中枢904包括,但不局限于,图形存储器控制器中枢(GMCH)(图中未示出)和输入/输出中枢(IOH)(其可以在分开的芯片上)(图中未示出),其中GMCH包括存储器和图形控制器并与IOH耦合。
电子设备900还可包括耦合到控制器中枢904的协处理器906和存储器902。或者,存储器902和GMCH中的一个或两者可以被集成在处理器901内(如本申请中所描述的),存储器902和协处理器906直接耦合到处理器901以及控制器中枢904,控制器中枢904与IOH处于单个芯片中。
存储器902可以是例如动态随机存取存储器(DRAM)、相变存储器(PCM)或这两者的组合。
在一个实施例中,协处理器906是专用处理器,诸如例如高吞吐量MIC处理器、网络或通信处理器、压缩引擎、图形处理器、GPGPU、或嵌入式处理器等等。协处理器906的任选性质用虚线表示在图17中。
在一个实施例中,电子设备900可以进一步包括网络接口(NIC)903。网络接口903可以包括收发器,用于为电子设备900提供无线电接口,进而与任何其他合适的设备(如前端模块,天线等)进行通信。在各种实施例中,网络接口903可以与电子设备900的其他组件集成。网络接口903可以实现上述实施例中的通信单元的功能。
电子设备900可以进一步包括输入/输出(I/O)设备905。输入/输出(I/O)设备905可以包括:用户界面,该设计使得用户能够与电子设备900进行交互;外围组件接口的设计使得外围组件也能够与电子设备900交互;和/或传感器设计用于确定与电子设备900相关的环境条件和/或位置信息。
值得注意的是,图17仅是示例性的。即虽然图17中示出了电子设备900包括处理器901、控制器中枢904、存储器902等多个器件,但是,在实际的应用中,使用本申请各方法的设备,可以仅包括电子设备900各器件中的一部分器件,例如,可以仅包含处理器901和NIC903。图17中可选器件的性质用虚线示出。
在该电子设备900的存储器中可以包括用于存储数据和/或指令的一个或多个有形的、非暂时性计算机可读介质。计算机可读存储介质中存储有指令,具体而言,存储有该指令的暂时和永久副本。
本申请中,该电子设备900具体可以是认证服务器,该电子设备的存储器中存储的指令可以包括:由处理器中的至少一个单元执行时导致认证服务器实施如前述提到的应用登录方法的指令。
本申请中,该电子设备900具体可以是客户终端,该电子设备的存储器中存储的指令可以包括:由处理器中的至少一个单元执行时导致客户终端实施如前述所提到的应用访问应用服务器的方法的指令。
参见图18,图18所示为根据本申请的一实施方式提供的SoC(System on Chip,片上系统)1000的结构示意图。在图18中,相似的部件具有同样的附图标记。另外,虚线框是更先进的SoC 1000的可选特征。该SoC 1000可以被用于根据本申请的任一电子设备,比如根据本申请的任一实施例的客户终端,或者用于根据本申请的任一实施例的认证服务器或应用服务器。根据其所在的设备不同以及其内所存储的指令的不同,可以实现相应的功能。
在图18中,SoC1000包括:互连单元1002,其被耦合至处理器1001;系统代理单元1006;总线控制器单元1005;集成存储器控制器单元1003;一组或一个或多个协处理器1007,其可包括集成图形逻辑、图像处理器、音频处理器和视频处理器;SRAM(静态随机存取存储器)单元1008;DMA(直接存储器存取)单元1004。在一个实施例中,协处理器1007包括专用处理器,诸如例如网络或通信处理器、压缩引擎、GPGPU、高吞吐量MIC处理器、或嵌入式处理器等等。
SRAM单元1008中可以包括用于存储数据和/或指令的一个或多个计算机可读介质。计算机可读存储介质中可以存储有指令,具体而言,存储有该指令的暂时和永久副本。该指令可以包括:由处理器中的至少一个单元执行时导致认证服务器实施如前述所提到的应用登录方法的指令,或导致客户终端实施如前述所提到的应用访问应用服务器的方法的指令。
本申请公开的机制的各实施例均可以以软件、硬件、固件或这些实现方法的组合等方式实现。本申请的实施例可实现为在可编程系统上执行的计算机程序或程序代码,该可编程程序包括至少一个处理器、存储器(或存储系统,包括易失性和非易失性存储器和/或存储单元)。
可将程序代码应用于输入指令,以执行文本描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。可以理解,在本申请的实施例中,处理系统可以是微处理器、数字信号处理器(DSP)、微控制器、专用集成电路(ASIC)等,和/或其任何组合。根据另一方面,处理器可以是单核处理器、多核处理器等,和/或其任何组合。
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理器通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,文本中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
在一些情况下,所公开的实施例可以以硬件、固件、软件或其他任何组合来实现。所公开的实施例可以被实现为一个或多个暂时或非暂时性及其可读(例如,计算机可读)存储介质承载或存储在其上的指令,其可以由一个多个处理器读取和执行。例如,指令通过网络或气压计算机可读取介质分发。因此,机器可读取介质可以包括用于机器(例如,计算机)可读的形式存储或传输信息的任何机制,包括但不限于,软盘、光盘、光碟、只读存储器(CD-ROMs)、磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、闪卡、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字等)的有形的机器可读取存储器。因此,机器可读取介质包括适合于以机器可读的形式存储或传输电子指令或信息的任何类型的机器可读介质。
至少一个实施例的一个或多个方面可以由存储在计算机可读取存储介质上的表示性指令来实现,指令表示处理器中的各种逻辑,指令在被机器读取时使得该机制作用于执行文本所述的技术的逻辑。被称为“IP核”的这些表示可以被存储在有形的计算机可读取存储介质上,并被提供给多个客户或生产设备实施以加载到实际制造该逻辑或处理器的制造机器中。
在一些情况下,指令转换器可用来将指令从源指令集转移至目标指令集。例如,指令转换器可以变换(例如使用静态二进制变换、包括动态编译的动态二进制变换)、变形、仿真或以其他方式将指令转换成由核来处理的一个或多个其他指令。指令转换器可以用软件、硬件、固件、或其他组合实现。指令转换器可以在处理器上、在处理器外、或者部分在处理器上且部分在处理器外。
需要说明的是,如本文所使用的,术语“模块”可以指代或者专用集成电路(ASIC)、电子电路、执行一个或多个软件或固件程序的处理器(共享、专用或群组)和/或存储器、组合逻辑电路、和/或提供所描述的功能的其他适当硬件组件,或者可以作为这些硬件组合的一部分。即本申请各设备实施例中的各模块都是逻辑模块,在物理上,一个逻辑模块可以是一个物理单元,也可以是一个物理单元的一部分,还可以是多个物理单元的组合实现。另外,本申请上述各设备实施例并没有将于解决本申请所提出的技术问题关系不太密切的模块引入,这并不表明上述设备实施例并不存在其他的模块。
需要说明的是,本申请中的通信模块具体可以包括发射器和接收器,或收发器,用于为所处的设备提供无线通信功能,使得所处的设备与其他设备进行通信。例如使得终端设备发送投屏数据,播放设备接收投屏数据。
需要说明的是,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
需要说明的是,在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
虽然通过参照本申请的某些优选实施方式,已经对本申请进行了图示和描述,但本领域的普通技术人员应该明白,以上内容是结合具体的实施方式对本申请所作的进一步详细说明,不能认定本申请的具体实施只局限于这些说明。本领域技术人员可以在形式上和细节上对其作各种改变,包括做出若干简单推演或替换,而不偏离本申请的精神和范围。