After a session token has been validated, the policy agent determines if the user can be granted access to the server by evaluating its defined policies. Figure 6–4 illustrates this process.
The policy agent sends a request to the Policy Service, asking for decisions regarding resources in its portion of the HTTP namespace.
The request also includes additional environmental information. For example, IP address or DNS name could be included in the request because they might impact conditions set on a configuration policy.
The Policy Service checks for policies that apply to the request.
Policies are cached in OpenSSO Enterprise. If the policies have not been cached already, they are loaded from OpenSSO Enterprise.
If policies that apply to the request are found, the Policy Service checks if the user identified by the session token is a member of any of the Policy Subjects.
If no policies that match the resource are found, the user will be denied access.
If policies are found that match the resource, and the user is a valid subject, the Policy Service evaluates the conditions of each policy. For example, Is it the right time of day? or Are requests coming from the correct network?
If the conditions are met, the policy applies.
If the conditions are not met, the policy is skipped.
The Policy Service aggregates all policies that apply, encodes a final decision to grant or deny access, and responds to the policy agent.
The next part of the basic user session is Logging the Results.