10.02.2013 Views

IBM Tivoli Access Manager for e-business: WebSEAL Administration ...

IBM Tivoli Access Manager for e-business: WebSEAL Administration ...

IBM Tivoli Access Manager for e-business: WebSEAL Administration ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Managing<br />

session<br />

state<br />

A<br />

secure<br />

connection,<br />

or<br />

session,<br />

between<br />

a<br />

client<br />

and<br />

a<br />

server<br />

requires<br />

that<br />

the<br />

server<br />

have<br />

the<br />

ability<br />

to<br />

remember—over<br />

numerous<br />

requests—who<br />

it<br />

is<br />

talking<br />

to.<br />

The<br />

server<br />

must<br />

have<br />

some<br />

<strong>for</strong>m<br />

of<br />

session<br />

state<br />

in<strong>for</strong>mation<br />

that<br />

identifies<br />

the<br />

client<br />

associated<br />

with<br />

each<br />

request.<br />

This<br />

section<br />

contains<br />

the<br />

following<br />

topics:<br />

v<br />

“Session<br />

state<br />

overview”<br />

on<br />

page<br />

132<br />

v<br />

“GSKit<br />

and<br />

<strong>WebSEAL</strong><br />

session<br />

cache<br />

overview”<br />

on<br />

page<br />

132<br />

v<br />

“Configuring<br />

the<br />

GSKit<br />

SSL<br />

session<br />

ID<br />

cache”<br />

on<br />

page<br />

133<br />

v<br />

“Configuring<br />

the<br />

<strong>WebSEAL</strong><br />

session/credentials<br />

cache”<br />

on<br />

page<br />

133<br />

v<br />

“Maintaining<br />

state<br />

with<br />

session<br />

cookies”<br />

on<br />

page<br />

135<br />

v<br />

“Determining<br />

valid<br />

session<br />

ID<br />

data<br />

types”<br />

on<br />

page<br />

138<br />

Session<br />

state<br />

overview<br />

Without<br />

an<br />

established<br />

session<br />

state<br />

between<br />

client<br />

and<br />

server,<br />

the<br />

communication<br />

between<br />

the<br />

client<br />

and<br />

the<br />

server<br />

must<br />

be<br />

renegotiated<br />

<strong>for</strong><br />

each<br />

subsequent<br />

request.<br />

Session<br />

state<br />

in<strong>for</strong>mation<br />

improves<br />

per<strong>for</strong>mance<br />

by<br />

eliminating<br />

repeated<br />

closing<br />

and<br />

re-opening<br />

of<br />

client/server<br />

connections.<br />

The<br />

client<br />

can<br />

log<br />

in<br />

once<br />

and<br />

make<br />

numerous<br />

requests<br />

without<br />

per<strong>for</strong>ming<br />

a<br />

separate<br />

login<br />

<strong>for</strong><br />

each<br />

request.<br />

<strong>WebSEAL</strong><br />

handles<br />

both<br />

HTTP<br />

and<br />

HTTPS<br />

communication.<br />

HTTP<br />

is<br />

a<br />

″stateless″<br />

protocol<br />

and<br />

does<br />

not<br />

provide<br />

any<br />

means<br />

of<br />

distinguishing<br />

one<br />

request<br />

from<br />

another.<br />

The<br />

SSL<br />

transport<br />

protocol,<br />

on<br />

the<br />

other<br />

hand,<br />

is<br />

specifically<br />

designed<br />

to<br />

provide<br />

a<br />

session<br />

ID<br />

to<br />

maintain<br />

session<br />

state<br />

in<strong>for</strong>mation.<br />

HTTP<br />

communication<br />

can<br />

be<br />

encapsulated<br />

over<br />

SSL<br />

to<br />

become<br />

HTTPS.<br />

However,<br />

<strong>WebSEAL</strong><br />

must<br />

often<br />

handle<br />

HTTP<br />

communication<br />

from<br />

unauthenticated<br />

clients.<br />

And<br />

there<br />

are<br />

times<br />

when<br />

the<br />

SSL<br />

session<br />

ID<br />

is<br />

not<br />

an<br />

appropriate<br />

solution.<br />

There<strong>for</strong>e,<br />

<strong>WebSEAL</strong><br />

is<br />

designed<br />

to<br />

use<br />

any<br />

of<br />

the<br />

following<br />

in<strong>for</strong>mation<br />

types<br />

to<br />

maintain<br />

session<br />

state<br />

with<br />

a<br />

client:<br />

v<br />

SSL<br />

ID<br />

v<br />

Server-specific<br />

session<br />

cookie<br />

v<br />

BA<br />

header<br />

data<br />

v<br />

HTTP<br />

header<br />

data<br />

v<br />

IP<br />

address<br />

GSKit<br />

and<br />

<strong>WebSEAL</strong><br />

session<br />

cache<br />

overview<br />

A<br />

session<br />

cache<br />

allows<br />

a<br />

server<br />

to<br />

store<br />

the<br />

session<br />

ID<br />

in<strong>for</strong>mation<br />

from<br />

multiple<br />

clients.<br />

<strong>WebSEAL</strong><br />

uses<br />

two<br />

types<br />

of<br />

session<br />

caches<br />

to<br />

accommodate<br />

both<br />

HTTPS<br />

and<br />

HTTP<br />

session<br />

state<br />

in<strong>for</strong>mation.<br />

v<br />

<strong>WebSEAL</strong><br />

session/credentials<br />

cache<br />

The<br />

<strong>WebSEAL</strong><br />

session/credentials<br />

cache<br />

stores<br />

any<br />

type<br />

of<br />

session<br />

ID<br />

in<strong>for</strong>mation<br />

(see<br />

the<br />

list<br />

above)<br />

plus<br />

the<br />

credential<br />

in<strong>for</strong>mation<br />

obtained<br />

<strong>for</strong><br />

each<br />

client.<br />

Credential<br />

in<strong>for</strong>mation<br />

is<br />

cached<br />

to<br />

eliminate<br />

repetitive<br />

queries<br />

to<br />

the<br />

user<br />

registry<br />

database<br />

during<br />

authorization<br />

checks.<br />

v<br />

GSKit<br />

SSL<br />

session<br />

ID<br />

cache<br />

The<br />

GSKit<br />

session<br />

cache<br />

handles<br />

HTTPS<br />

(SSL)<br />

communication<br />

when<br />

SSL<br />

session<br />

ID<br />

in<strong>for</strong>mation<br />

is<br />

used<br />

to<br />

maintain<br />

session<br />

state.<br />

132<br />

<strong>IBM</strong><br />

<strong>Tivoli</strong><br />

<strong>Access</strong><br />

<strong>Manager</strong><br />

<strong>for</strong><br />

e-<strong>business</strong>:<br />

<strong>WebSEAL</strong><br />

<strong>Administration</strong><br />

Guide

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!