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.

A<br />

single<br />

user<br />

that<br />

logs<br />

in<br />

multiple<br />

times<br />

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

example,<br />

from<br />

different<br />

machines)<br />

has<br />

multiple<br />

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

session<br />

IDs.<br />

Because<br />

the<br />

User<br />

Session<br />

ID<br />

is<br />

based<br />

on<br />

the<br />

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

session<br />

ID,<br />

there<br />

exists<br />

a<br />

one-to-one<br />

mapping<br />

between<br />

them.<br />

The<br />

unique<br />

user<br />

session<br />

ID<br />

is<br />

stored<br />

as<br />

an<br />

attribute<br />

to<br />

the<br />

user’s<br />

credential.<br />

This<br />

allows<br />

the<br />

value<br />

to<br />

be<br />

passed<br />

across<br />

a<br />

junction<br />

as<br />

an<br />

HTTP<br />

header<br />

(using<br />

tag-value<br />

functionality)<br />

and<br />

made<br />

available<br />

to<br />

a<br />

back-end<br />

application.<br />

Inserting<br />

credential<br />

data<br />

into<br />

the<br />

HTTP<br />

header<br />

The<br />

goal<br />

of<br />

user<br />

session<br />

management<br />

is<br />

to<br />

provide<br />

the<br />

unique<br />

User<br />

Session<br />

ID<br />

to<br />

the<br />

back-end<br />

application<br />

server.<br />

This<br />

goal<br />

is<br />

accomplished<br />

by<br />

configuring<br />

the<br />

HTTP-Tag-Value<br />

extended<br />

attribute<br />

on<br />

the<br />

junction.<br />

You<br />

use<br />

the<br />

pdadmin<br />

object<br />

modify<br />

set<br />

attribute<br />

command<br />

to<br />

set<br />

an<br />

extended<br />

attribute<br />

on<br />

a<br />

junction<br />

object<br />

in<br />

the<br />

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

protected<br />

object<br />

space.<br />

pdadmin><br />

object<br />

modify<br />

object_name<br />

set<br />

attribute<br />

attr_name<br />

attr_value<br />

An<br />

attribute<br />

(“attr-name”)<br />

enables<br />

the<br />

junction<br />

to<br />

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

a<br />

specific<br />

type<br />

of<br />

functionality.<br />

The<br />

HTTP-Tag-Value<br />

attribute<br />

enables<br />

the<br />

junction<br />

to<br />

extract<br />

a<br />

value<br />

from<br />

a<br />

credential<br />

extended<br />

attribute<br />

and<br />

send<br />

the<br />

value<br />

to<br />

the<br />

back-end<br />

server<br />

in<br />

an<br />

HTTP<br />

header.<br />

The<br />

value<br />

of<br />

the<br />

HTTP-Tag-Value<br />

extended<br />

attribute<br />

uses<br />

the<br />

following<br />

<strong>for</strong>mat:<br />

credential_extended_attribute_name=http_header_name<br />

For<br />

User<br />

Session<br />

ID<br />

data,<br />

the<br />

credential_extended_attribute_name<br />

entry<br />

is<br />

the<br />

same<br />

as<br />

the<br />

user_session_id<br />

extended<br />

attribute<br />

name<br />

specified<br />

in<br />

the<br />

configuration<br />

file<br />

but<br />

without<br />

the<br />

″tagvalue_″<br />

prefix.<br />

The<br />

entry<br />

is<br />

not<br />

case-sensitive.<br />

The<br />

value<br />

of<br />

this<br />

extended<br />

attribute<br />

contains<br />

the<br />

unique<br />

User<br />

Session<br />

ID.<br />

The<br />

http_header_name<br />

entry<br />

specifies<br />

the<br />

name<br />

of<br />

the<br />

HTTP<br />

header<br />

used<br />

to<br />

deliver<br />

the<br />

data<br />

across<br />

the<br />

junction.<br />

In<br />

this<br />

example,<br />

a<br />

header<br />

called<br />

PD-USER-<br />

SESSION-ID<br />

is<br />

used:<br />

pdadmin><br />

object<br />

modify<br />

/<strong>WebSEAL</strong>/WS1/junctionA<br />

set<br />

attribute<br />

\<br />

HTTP-Tag-Value<br />

user_session_id=PD-USER-SESSION-ID<br />

When<br />

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

processes<br />

a<br />

user<br />

request<br />

to<br />

a<br />

back-end<br />

application<br />

server,<br />

it<br />

looks<br />

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

any<br />

HTTP-Tag-Value<br />

extended<br />

attributes<br />

configured<br />

on<br />

the<br />

junction<br />

object.<br />

In<br />

this<br />

example,<br />

the<br />

configured<br />

junction<br />

looks<br />

at<br />

the<br />

credential<br />

of<br />

the<br />

user<br />

making<br />

the<br />

request,<br />

extracts<br />

the<br />

User<br />

Session<br />

ID<br />

value<br />

from<br />

the<br />

tagvalue_user_session_id<br />

extended<br />

attribute<br />

in<br />

the<br />

credential,<br />

and<br />

places<br />

the<br />

value<br />

in<br />

an<br />

HTTP<br />

header<br />

as:<br />

PD-USER-SESSION-ID:user_session_id<br />

In<br />

summary:<br />

Value<br />

of<br />

HTTP-Tag-Value<br />

attribute<br />

set<br />

on<br />

the<br />

junction<br />

object:<br />

user_session_id=PD-USER-SESSION-ID<br />

Attribute<br />

name<br />

and<br />

value<br />

as<br />

they<br />

appear<br />

in<br />

the<br />

user<br />

credential:<br />

tagvalue_user_session_id:user_session_id_number<br />

HTTP<br />

header<br />

name<br />

and<br />

value:<br />

PD-USER-SESSION-ID:user_session_id_number<br />

If<br />

the<br />

back-end<br />

application<br />

is<br />

a<br />

CGI<br />

application,<br />

the<br />

CGI<br />

specification<br />

dictates<br />

that<br />

HTTP<br />

headers<br />

are<br />

made<br />

available<br />

to<br />

CGI<br />

programs<br />

as<br />

environment<br />

variables<br />

in<br />

the<br />

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

344<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!