Three, summary of the invention
The invention provides a kind of visiting user's the single-sign-on and method of Collective qualification of between a plurality of WEB application servers, realizing.This method is as user for the first time access application system 1 time, because also not login can be directed in the identification service system and login; The log-on message that provides according to the user then, Verification System is carried out the identity effect, if through effect, can return to the authority of an authentication of user; Will be when this user visits again other application with on this authority band, as the authority of own authentication, other application system can be delivered to Verification System to this authority and carry out effect after the request of receiving, the legitimacy of inspection authority.If through verification, the user just can be under situation about need not login once more access application system 2 with application system 3.
3.1 explanation of nouns
①IT:
Proof-of-identity is written as Identity Ticket entirely, represents a user's identity.A user can only have an IT in a fixed time period.Proof-of-identity has of overall importance, holds property of a specified duration, uniqueness.
②ST:
Service authority is written as Service Ticket, the temporary identity when representing certain application system of user capture entirely.A user possibly have a plurality of ST in a fixed time period.Service authority has locality, holds property of a specified duration, nonuniqueness.
③Browser:
Browser, i.e. client on the ordinary meaning.
④AppSys/PortalSys:
Application system/gate system is written as ApplicationSystem/PortalSystem entirely, and it represents the information system of an application layer.
This information system need match with other information systems, accomplishes single-sign-on (SSO) jointly.
⑤SSOAgent:
The SSO agency, for accomplishing single-sign-on, a SSO agency in application system/gate system end administration is responsible for using the SSO of system all functions.
⑥AS:
Certificate server is written as Authentication Server entirely, mainly be responsible for user profile authentication, safeguard all relevant authority life cycles or the like.In this programme, has only a certificate server in logic.
⑦LoginPage:
User's log in page, the certificate server end provides with the list form, is used for the user and inputs user name, password, selection user certificate (if implementing PKI) etc., to accomplish the SSO login.
⑧DataSource:
Data source is preserved the data source of user profile, is used for the legitimacy of verified users information.
3.2 authority characteristic
1. proof-of-identity IT:
◇ proof-of-identity information is formed:
1) authority call number: can think unique ID of authority, generate by special algorithm.
2) authentication result information: encapsulation authentication result information.Mainly comprise the customer attribute information that requested service information (like the SSOAgent inlet link of request etc.), authenticated time, authentication success need return.
3) authority Policy Info: some security policies that authority itself is applied.
◇ proof-of-identity call number generating algorithm:
1) adopts the GUID algorithm.
2) the salt value-based algorithm of employing word string generating algorithm and expansion.
◇ proof-of-identity storage mode:
1) AS certificate server: support multiple storage mode, as: buffer memory, RDB database, LDAP or the like
2) Browser client: the Cookie that can hold of a specified durationization.
3) SSOAgent end: do not store.
2. serve authority ST:
◇ service authority information is formed:
1) authority call number: can think unique ID of authority, generate by special algorithm.
2) requested service information: like SSOAgent inlet link etc.
3) authority Policy Info: some security policies that authority itself is applied.
◇ service authority call number generating algorithm:
1) adopts the GUID algorithm.
2) the salt value-based algorithm of employing word string generating algorithm and expansion.
◇ service authority storage mode:
1) AS certificate server: support multiple storage mode, as: buffer memory, RDB database, LDAP or the like
2) Browser client: do not store.
3) SSOAgent end: do not store.
3.3 operation instruction
1. user logins AppSys/PortalSys first
The ◇ precondition:
The Browser end is not stored the identity documents IT of user; The AppSys/PortalSys end does not have the Session state (being that user does not login this information system) of user; User identity documents IT situation in the certificate server AS end unknown (or have or do not have, effective or invalid).
The ◇ flow process is described (asking for an interview accompanying drawing 1):
The 1st step: user clicks the inlet link URL of an AppSys/PortalSys on Browser; Send logging request (annotate: this inlet link is that SSOAgent aims at SSO and the inlet that provides to the external world, is different from original application system inlet) to application system/gate system.
After the 2nd step: SSOAgent terminates to this request, through judging: not login (no user correlation behavior among the Session) user this moment; Perhaps this request does not comprise a ST; Perhaps this request comprises a ST but lost efficacy.Then this moment, SSOAgent can send redirect instruction to the Browser end, was redirected to the AS end, required user to login.
After the 3rd step: AS terminates to the redirect request of Browser end, through judging: do not comprise the proof-of-identity IT (Cookie who is present in the Browser end) of user in this request, then this moment, AS can send a LoginPage log in page to the Browser end.
The 4th step: user inserts information such as user name, password at the Browser end, submits to the AS end and carries out authentication.
The 5th step: after the AS end is received the identity information of user, carry out proof procedure.If verify successfully; Then the AS end can generate a proof-of-identity IT for user; Be kept at the AS end, the application system/gate system that will conduct interviews for user generates a service evidence ST, also is kept at the AS end; Send a redirect instruction to the Browser end then, be redirected to the SSOAgent inlet link URL of original application system/gate system; In this redirection process, simultaneously the proof-of-identity IT of user is returned to the Browser end, service evidence ST is attached to parametric form is redirected the inlet link URL and returns to SSOAgent at the back.If checking is unsuccessful, then AS can resend a LoginPage log in page to the Browser end, gets back to the 4th step of this flow process.
The 6th step: after the SSOAgent end is received the redirect request of Browser end: comprise a service authority ST this moment in the request through judging.Then this moment, SSOAgent can send whether effective request (because ST is produced by AS, so by its checking) of this ST of checking to AS end.
The 7th step: after the AS end is received the request of checking ST, can check ST.Through after a series of checkout procedures,, then can return the user profile of this ST representative to SSOAgent if this ST is effective; If this ST is invalid, then also return the invalid information of this ST to SSOAgent.
The 8th step: SSOAgent can make correspondingly action after receiving the checking result of this ST.If it is effective that the result is ST, then SSOAgent can note user Session state, returns homepage or the welcome page of AppSys/PortalSys simultaneously to the Browser end; If it is invalid that the result is ST, then SSOAgent can send redirect instruction to the Browser end, is redirected to the AS end, requires user to login, and gets back to the 3rd step of this flow process afterwards.
2. user logins AppSys/PortalSys for the second time
The ◇ precondition:
The Browser end has been stored the identity documents IT (Cookie form) of user; The AppSys/PortalSys end does not have the Session state (be that user does not login this information system, refer in particular to login for the second time here) of user; User identity documents IT situation in the certificate server AS end unknown (or have or do not have, effective or invalid).
The ◇ flow process is described (asking for an interview accompanying drawing 2):
The 1st step: user clicks the inlet link URL of an AppSys/PortalSys on Browser; Send logging request (annotate: this inlet link is that SSOAgent aims at SSO and the inlet that provides to the external world, is different from original application system inlet) to application system/gate system.
After the 2nd step: SSOAgent terminates to this request, through judging: not login (no user correlation behavior among the Session) user this moment; Perhaps this request does not comprise a ST; Perhaps this request comprises a ST but lost efficacy.Then this moment, SSOAgent can send redirect instruction to the Browser end, was redirected to the AS end, required user to login.
After the 3rd step: AS terminates to the redirected request of Browser end, through judging: comprised the proof-of-identity IT (being the Cookie of Browser end) of a user in this request, then AS can carry out proof procedure to this IT at this moment.If this IT is effective; Then can upgrade this IT and preservation; The AppSys/PortalSys that will conduct interviews for user simultaneously generates a ST and preserves, and sends a redirect instruction to the Browser end then, is redirected to the SSOAgent inlet link URL of original application system/gate system; User proof-of-identity IT after in this redirection process, will upgrading simultaneously returns to the Browser end, service evidence ST is attached to redirected inlet link back with parametric form returns to SSOAgent, gets back to the 6th step of flow process 1 afterwards.If this IT is invalid, then this moment, AS can send a LoginPage log in page to the Browser end, got back to afterwards with the 4th step of flow process.
3. proof procedure:
◇ usemame/password proof procedure:
At AS certificate server end, after receiving the usemame/password that Browser sends over, can verify to the user profile data source.
◇ proof-of-identity IT proof procedure:
At AS certificate server end, after receiving the proof-of-identity that Browser sends over, can retrieve proof-of-identity according to the proof-of-identity call number, verify according to the policy information in this authority then.Proof procedure is substantially as follows:
1) current system time thinks then that greater than the term of validity time of proof-of-identity this proof-of-identity lost efficacy.
2) blanking time that differs by more than appointment last service time mutually of current system time and bill, think that then this proof-of-identity lost efficacy.
3) the proof-of-identity access times think then that greater than predetermined number of times this proof-of-identity lost efficacy.
4) other strategy is like expired strategy etc. never.
◇ service authority ST proof procedure:
At AS certificate server end, after receiving the service authority that SSOAgent sends over, can retrieve service authority according to service authority call number, verify according to the policy information in this authority then.Proof procedure is consistent with the proof-of-identity proof procedure, omits here.
3.4 authentication security
1. authority fail safe:
One co-exist in two kinds of authoritys (IT and ST) in the method, these two kinds of authoritys all have authority, confidentiality, integrality, so it is most important that relevant authority is carried out safeguard protection.
◇ storage aspect: the extent of disclosure that depends on credential information.If full disclosure then can be encrypted storage and be transferred to Browser (to IT) and SSOAgent (to ST) the authority related data; If underground, then can adopt authority generation unique index form is transmitted, what this moment, Browser and SSOAgent obtained is not authority itself, but the authority call number.
◇ strategy aspect: authority itself because of some security strategies that safety factor applies, is depended on the safe coefficient of the real system of scheme own.Concrete detailed strategy is exemplified below:
(1) term of validity strategy: the authority term of validity is that what, the authority term of validity can prolong or shorten, verify at every turn that can the term of validity automatically prolong behind the authority (what prolong)
(2) threshold values number of times strategy: whether in the authority term of validity, how many maximum access times of authority are, reach after the maximum times authority ceases to be in force automatically or becomes sleep authority
(3) pot life strategy: authority just can use, use the minimum interval size in which special time scope
(4) authority detecting strategy: the situation for illegal use authority is carried out Auto-Sensing, and provides relevant treatment and (carry out repeatedly authentication, multiple authentication authority or the like in the short time singularly such as the utmost point; )
2. communications security:
Application layer communication protocol mainly is to adopt http protocol in the method, and institute thinks that assurance user name, password, authority information are not stolen, usurp, and can adopt ssl protocol to strengthen the fail safe of communication channel.
In this programme, co-exist in four channels, safe coefficient is roughly following:
◇ Browser <>AS: transmission user name, password, proof-of-identity IT, service authority ST in this channel, security intensity is the highest, strong suggest SSL.
◇ AS <>DataSource: transmission user name, password in this channel, and possibly cross over security domain, security intensity is higher, suggest SSL (annotating: if the authentication interface that DataSource provides provides encrypted transmission, also can not use SSL).
◇ Browser <>SSOAgent: transmission service authority ST in this channel, security intensity is moderate, can use SSL.
◇ SSOAgent <>AS: transmission service authority ST, user profile in this channel, security intensity is moderate, can use SSL.
3. server security property:
Emphasis is embodied on the security solution that server itself provides, and such as IIS, Weblogic, DBServer or the like, on macroscopic view, can be divided into following two types substantially:
The ◇ server is based on the access control of territory/IP address
The ◇ server is based on the access control of local file system
[Fig. 1]: when the user access application system first time, identifying procedure figure.
[Fig. 2]: when user's back-call application system, identifying procedure figure.