SlideShare a Scribd company logo
1 of 15
19-11-15 07:11 PM 5864_ER_WHITE.1
WebSphere on z/OS
and RACF Security
Michael Erichsen & Adam Mazhar, CSC
March 2006
19-11-15 07:11 PM 5864_ER_WHITE. 2
Purpose and contents of the Presentation
• It is assumed that mainframe and Java people each on their
side have a much deeper knowledge than the writer of this
presentation
– The ambition is solely to try to translate the two sides to each
other to help better communicate and, consequently, to plan
and execute the necessary work
• The presentation begins at the traditional RACF model and
the normal Java Sign-on Model
– It then shows how the Java model is implemented in RACF
– It finally compares this new model to the traditional CICS
security model
19-11-15 07:11 PM 5864_ER_WHITE. 3
What is RACF?
• RACF means Resource Access Control Facility
• RACF is really just a data base sitting passively, waiting for
someone to ask questions
• RACF stores lists of groups of users, each having a
password and a number of profiles
– Groups can contain groups
• RACF also stores lists of resource classes, each having a
number of profiles and members
• The programming interface to inquire RACF is called SAF
(System Authorization Facility) and consists of a number of
macro calls
– The main macro calls are
• RACROUTE,REQUEST=VERIFY to verify user IDs
• RACROUTE,REQUEST=AUTH to check against access to a
secure profile
19-11-15 07:11 PM 5864_ER_WHITE. 4
Some RACF Class Examples
Default RACF Classes Description
CBIND Controls the client’s ability to bind to the server. With WebSphere we
need to control access to the server
DATASET Access to data sets
DIGTCERT Contains digital certificates and information related to them
DSNR Controls access to DB2 subsystems (CONNECT)
EJBROLE Member class for J2EE authorization roles. The APPLDATA field in
an EJBROLE profile defines the target Java identity when running in
RUNAS ROLE mode
FACILITY Can be used for anything you want
GCICSTRN Grouping class for CICS Transactions
GEJBROLE Grouping class for Enterprise Java Beans authorization roles
MDSNDB MDSNPK MDSNPN MDSNBP MDSNCL
MDSNTS MDSNSG MDSNTB MDSNSM MDSNSC
MDSNUT MDSNUF MDSNSP MDSNJR DSNADM
Default Classes for DB2 External Security. Special classes exist for
Buffer pools, collections, databases, packages, plans, storage groups,
subsystems, tables, table spaces, etc
TCICSTRN CICS Transactions
SERVAUTH Can be used to protect TCP/IP ports
SERVER Used in WebSphere to control whether a server region can call
authorized programs in the control region
19-11-15 07:11 PM 5864_ER_WHITE. 5
Traditional RACF Profiles and Permission Levels
• TCICSTRN profiles typically contain all transactions in an
application or part of an application
– Can be named whatever is appropriate
• DSNR profiles have names of the form
subsystem.environment
– Subsystem is the name of a DB2 subsystem
– Environment denotes the environment like SASS for CICS,
DIST for Distributed, BATCH for batch and some other types of
workload
• User profiles consists of one or more segments:
– A mandatory RACF segment, which holds basic information
like name, password etc.
– Optional segments with system-specific data including CICS,
LANGUAGE and many others
• Groups of users (or single users) are permitted access to a
profile in a class in levels, each of which include lower
levels:
– ALTER, CONTROL, UPDATE. READ, EXECUTE, NONE
19-11-15 07:11 PM 5864_ER_WHITE. 6
Java Security
• Authentication
– Basically checks the user's login name and password and
allows access to step inside the application realm
• Authorization
– Allows access to specific functions of a given application like:
• Screens (for example only a select people might be able to access
Create New Person screen)
• Fields (For example only a select people might be able to see all
fields on a query result screen or Create screen)
• Buttons (For example on a screen where there is an Update and
Delete buttons, only certain people can do Deletes)
• Data (For example cases for a certain region can only be seen by
users of that region, in other words restricting the where clauses of
the queries based on certain key data elements)
19-11-15 07:11 PM 5864_ER_WHITE. 7
EJBROLES
• Roles, as defined by J2EE, are not inherent in the
mainframe security model
• In order to implement J2EE roles, a new class, EJBROLE,
was created
– The name EJBROLE is not adequate, since it is used for J2EE
roles in both EJB’s and Web applications
• When an application deployer uses a role in a component’s
deployment descriptor, the role name must be identical to
the name of an EJBROLE profile
• A security administrator defines EJBROLE profiles and
permits groups of users to the profiles
• In order to be considered as eligible for a role, a user must
be connected to a group that has read access to the
EJBROLE profile
– You can define single users directly to resources, but that often
makes administration very complicated
19-11-15 07:11 PM 5864_ER_WHITE. 8
GEJBROLE
• RACF also supports a grouping class for the EJBROLE
class called GEJBROLE
• Used when you have a need to give access to the same
groups for several roles
• The GEJBROLE grouping class provides a capability not
natively available in other J2EE servers
• Probably practical, but certainly not portable
19-11-15 07:11 PM 5864_ER_WHITE. 9
Downstream Propagation of Userids From
WebSphere
Authorization
isCallerIn Role()
getCallerPrincipal()
Method
Execution
Downstream
Propagation
RunAs=Server
Identity="Caller"
Identity=Server-Identity
RunAs=Caller Identity="Caller"
RunAs=Role(x) Identity=Role(x) mapped to
RACF identity
RunAs is a J2EE option that allows a bean to temporarily run as the
server identity or the identity of a role that the user has
This effectively corresponds to the CICS-DB2 interface definition
AUTHID, which can be SIGNID (CICS Name), USERID, TERM
(terminal id), TXID (Transaction code), or any string
19-11-15 07:11 PM 5864_ER_WHITE. 10
CICS and RACF Security in the 3270 World
19-11-15 07:11 PM 5864_ER_WHITE. 11
Where is all this Stored?
• At sign-on time CICS builds a control block in memory
representing the connection between terminal id and userid
• This connection is kept until sign-off or time-out
• CICS knows that a user is not signed on, when this
connection does not exist in its control blocks
• The resource classes and profiles are stored in a memory
area shared by all systems (CICS’s, WebSphere’s, DB2’s,
TSO users etc)
19-11-15 07:11 PM 5864_ER_WHITE. 12
WebSphere and RACF Security
19-11-15 07:11 PM 5864_ER_WHITE. 13
Where is all this Stored?
• At sign-on time WebSphere creates a cookie containing a
security token, which represents the userid
• WebSphere knows that a user is not signed on, when this
cookie and token is not in the header of a request
• This has been implemented by the WebSphere developers
as a form based authentication
– Necessary features like authentication failures, password
expiration and renewal is implemented as a Servlet Filter
• A servlet filter is equivalent to a user exit in CICS
• The resource classes and profiles are stored in a memory
area shared by all systems (WebSphere’s, CICS’s, DB2’s,
TSO users etc)
19-11-15 07:11 PM 5864_ER_WHITE. 14
EJBROLE Implementation
• Defining a role in RACF
– RDEFINE EJBROLE My.Web.Application.Role UACC(NONE)
• Giving permission to a group of users
– PERMIT My.Web.Application.Role CLASS(EJBROLE)
ID(MYUSERS) ACCESS(READ)
• If the user registry custom property
com.ibm.security.SAF.authorization is set to true, then
EJBROLE profiles are used to authorize J2EE roles
• If the user ID has at least READ access to the defined
EJBROLE profile the user ID is considered to be in Role
• If you want to give access to the same groups for several
roles, you can groups EJBROLE classes in a GEJBROLE
class
19-11-15 07:11 PM 5864_ER_WHITE. 15
Further Reading
• Available online at
www.redbooks.ibm.com/
abstracts/sg246846.html

More Related Content

What's hot

Database Security Threats - MariaDB Security Best Practices
Database Security Threats - MariaDB Security Best PracticesDatabase Security Threats - MariaDB Security Best Practices
Database Security Threats - MariaDB Security Best PracticesMariaDB plc
 
Microservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring CloudMicroservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring CloudEberhard Wolff
 
JCL MAINFRAMES
JCL MAINFRAMESJCL MAINFRAMES
JCL MAINFRAMESkamaljune
 
What to Expect From Oracle database 19c
What to Expect From Oracle database 19cWhat to Expect From Oracle database 19c
What to Expect From Oracle database 19cMaria Colgan
 
MariaDB 제품 소개
MariaDB 제품 소개MariaDB 제품 소개
MariaDB 제품 소개NeoClova
 
Percona Live 2012PPT: introduction-to-mysql-replication
Percona Live 2012PPT: introduction-to-mysql-replicationPercona Live 2012PPT: introduction-to-mysql-replication
Percona Live 2012PPT: introduction-to-mysql-replicationmysqlops
 
Introduction of Oracle
Introduction of Oracle Introduction of Oracle
Introduction of Oracle Salman Memon
 
11 Understanding and Influencing the PL/SQL Compilar
11 Understanding and Influencing the PL/SQL Compilar11 Understanding and Influencing the PL/SQL Compilar
11 Understanding and Influencing the PL/SQL Compilarrehaniltifat
 
Introduction to MariaDB
Introduction to MariaDBIntroduction to MariaDB
Introduction to MariaDBJongJin Lee
 
Practical examples of using extended events
Practical examples of using extended eventsPractical examples of using extended events
Practical examples of using extended eventsDean Richards
 
Oracle architecture ppt
Oracle architecture pptOracle architecture ppt
Oracle architecture pptDeepak Shetty
 
An Overview to MySQL SYS Schema
An Overview to MySQL SYS Schema An Overview to MySQL SYS Schema
An Overview to MySQL SYS Schema Mydbops
 
Mainframe IPL Process.pdf
Mainframe IPL Process.pdfMainframe IPL Process.pdf
Mainframe IPL Process.pdfssuseraa0df4
 
Fine-tuning Group Replication for Performance
Fine-tuning Group Replication for PerformanceFine-tuning Group Replication for Performance
Fine-tuning Group Replication for PerformanceVitor Oliveira
 
IBM websphere application server types of profiles
IBM websphere application server types of profilesIBM websphere application server types of profiles
IBM websphere application server types of profilesKuldeep Saxena
 
IBM Websphere introduction and installation for beginners
IBM Websphere introduction and installation for beginnersIBM Websphere introduction and installation for beginners
IBM Websphere introduction and installation for beginnersShubham Gupta
 

What's hot (20)

Database Security Threats - MariaDB Security Best Practices
Database Security Threats - MariaDB Security Best PracticesDatabase Security Threats - MariaDB Security Best Practices
Database Security Threats - MariaDB Security Best Practices
 
Log4j in 8 slides
Log4j in 8 slidesLog4j in 8 slides
Log4j in 8 slides
 
Microservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring CloudMicroservices with Java, Spring Boot and Spring Cloud
Microservices with Java, Spring Boot and Spring Cloud
 
JCL MAINFRAMES
JCL MAINFRAMESJCL MAINFRAMES
JCL MAINFRAMES
 
What to Expect From Oracle database 19c
What to Expect From Oracle database 19cWhat to Expect From Oracle database 19c
What to Expect From Oracle database 19c
 
MariaDB 제품 소개
MariaDB 제품 소개MariaDB 제품 소개
MariaDB 제품 소개
 
Percona Live 2012PPT: introduction-to-mysql-replication
Percona Live 2012PPT: introduction-to-mysql-replicationPercona Live 2012PPT: introduction-to-mysql-replication
Percona Live 2012PPT: introduction-to-mysql-replication
 
Introduction of Oracle
Introduction of Oracle Introduction of Oracle
Introduction of Oracle
 
11 Understanding and Influencing the PL/SQL Compilar
11 Understanding and Influencing the PL/SQL Compilar11 Understanding and Influencing the PL/SQL Compilar
11 Understanding and Influencing the PL/SQL Compilar
 
Introduction to MariaDB
Introduction to MariaDBIntroduction to MariaDB
Introduction to MariaDB
 
Practical examples of using extended events
Practical examples of using extended eventsPractical examples of using extended events
Practical examples of using extended events
 
Oracle architecture ppt
Oracle architecture pptOracle architecture ppt
Oracle architecture ppt
 
Hdfs lab hands-on
Hdfs lab hands-on Hdfs lab hands-on
Hdfs lab hands-on
 
An Overview to MySQL SYS Schema
An Overview to MySQL SYS Schema An Overview to MySQL SYS Schema
An Overview to MySQL SYS Schema
 
Mainframe IPL Process.pdf
Mainframe IPL Process.pdfMainframe IPL Process.pdf
Mainframe IPL Process.pdf
 
Jboss Tutorial Basics
Jboss Tutorial BasicsJboss Tutorial Basics
Jboss Tutorial Basics
 
Java EE EJB Applications
Java EE EJB ApplicationsJava EE EJB Applications
Java EE EJB Applications
 
Fine-tuning Group Replication for Performance
Fine-tuning Group Replication for PerformanceFine-tuning Group Replication for Performance
Fine-tuning Group Replication for Performance
 
IBM websphere application server types of profiles
IBM websphere application server types of profilesIBM websphere application server types of profiles
IBM websphere application server types of profiles
 
IBM Websphere introduction and installation for beginners
IBM Websphere introduction and installation for beginnersIBM Websphere introduction and installation for beginners
IBM Websphere introduction and installation for beginners
 

Viewers also liked

Micro Niche Experiment #4 – The 60 Day Blogging Authority Rule
Micro Niche Experiment #4 – The 60 Day Blogging Authority RuleMicro Niche Experiment #4 – The 60 Day Blogging Authority Rule
Micro Niche Experiment #4 – The 60 Day Blogging Authority RuleMy Weight Loss Dream
 
Masters of Machines II: Conquering complexity with operational intelligence
Masters of Machines II: Conquering complexity with operational intelligenceMasters of Machines II: Conquering complexity with operational intelligence
Masters of Machines II: Conquering complexity with operational intelligenceSplunk
 
Short Sales Overview of EmpowerID
Short Sales Overview of EmpowerIDShort Sales Overview of EmpowerID
Short Sales Overview of EmpowerIDEmpowerID
 
Prueba de competanecia basicas
Prueba de competanecia basicasPrueba de competanecia basicas
Prueba de competanecia basicasalpaza27
 
02.01.14.licitação para obra do General Osório será no dia 7
02.01.14.licitação para obra do General Osório será no dia 702.01.14.licitação para obra do General Osório será no dia 7
02.01.14.licitação para obra do General Osório será no dia 7Guy Valerio Barros dos Santos
 
The prophet’s character part 5 page 02
The prophet’s character part 5 page 02The prophet’s character part 5 page 02
The prophet’s character part 5 page 02FAHIM AKTHAR ULLAL
 
EGREG Process Workflows
EGREG Process WorkflowsEGREG Process Workflows
EGREG Process WorkflowsFadi Hajjar
 
Pre-Con Ed: Real-Time Data Audit and Security: Find, Classify and Protect Sen...
Pre-Con Ed: Real-Time Data Audit and Security: Find, Classify and Protect Sen...Pre-Con Ed: Real-Time Data Audit and Security: Find, Classify and Protect Sen...
Pre-Con Ed: Real-Time Data Audit and Security: Find, Classify and Protect Sen...CA Technologies
 
Pre-Con Ed: CA Testing Tools Educational Session (Part 2 of 3): Learn, Engage...
Pre-Con Ed: CA Testing Tools Educational Session (Part 2 of 3): Learn, Engage...Pre-Con Ed: CA Testing Tools Educational Session (Part 2 of 3): Learn, Engage...
Pre-Con Ed: CA Testing Tools Educational Session (Part 2 of 3): Learn, Engage...CA Technologies
 
Pre-Con Ed: CA ACF2 and CA Top Secret – Part 1: What’s New in the Enterprise ...
Pre-Con Ed: CA ACF2 and CA Top Secret – Part 1: What’s New in the Enterprise ...Pre-Con Ed: CA ACF2 and CA Top Secret – Part 1: What’s New in the Enterprise ...
Pre-Con Ed: CA ACF2 and CA Top Secret – Part 1: What’s New in the Enterprise ...CA Technologies
 

Viewers also liked (17)

Micro Niche Experiment #4 – The 60 Day Blogging Authority Rule
Micro Niche Experiment #4 – The 60 Day Blogging Authority RuleMicro Niche Experiment #4 – The 60 Day Blogging Authority Rule
Micro Niche Experiment #4 – The 60 Day Blogging Authority Rule
 
Masters of Machines II: Conquering complexity with operational intelligence
Masters of Machines II: Conquering complexity with operational intelligenceMasters of Machines II: Conquering complexity with operational intelligence
Masters of Machines II: Conquering complexity with operational intelligence
 
Short Sales Overview of EmpowerID
Short Sales Overview of EmpowerIDShort Sales Overview of EmpowerID
Short Sales Overview of EmpowerID
 
Grandes matematicos
Grandes matematicosGrandes matematicos
Grandes matematicos
 
Power poin
Power poinPower poin
Power poin
 
Jesusisthe word en
Jesusisthe word enJesusisthe word en
Jesusisthe word en
 
Prueba de competanecia basicas
Prueba de competanecia basicasPrueba de competanecia basicas
Prueba de competanecia basicas
 
02.01.14.licitação para obra do General Osório será no dia 7
02.01.14.licitação para obra do General Osório será no dia 702.01.14.licitação para obra do General Osório será no dia 7
02.01.14.licitação para obra do General Osório será no dia 7
 
Desapariciones forzadas
Desapariciones forzadasDesapariciones forzadas
Desapariciones forzadas
 
The prophet’s character part 5 page 02
The prophet’s character part 5 page 02The prophet’s character part 5 page 02
The prophet’s character part 5 page 02
 
Pray away mealtime
Pray away mealtimePray away mealtime
Pray away mealtime
 
EGREG Process Workflows
EGREG Process WorkflowsEGREG Process Workflows
EGREG Process Workflows
 
Pre-Con Ed: Real-Time Data Audit and Security: Find, Classify and Protect Sen...
Pre-Con Ed: Real-Time Data Audit and Security: Find, Classify and Protect Sen...Pre-Con Ed: Real-Time Data Audit and Security: Find, Classify and Protect Sen...
Pre-Con Ed: Real-Time Data Audit and Security: Find, Classify and Protect Sen...
 
midhun (1)
midhun (1)midhun (1)
midhun (1)
 
Pre-Con Ed: CA Testing Tools Educational Session (Part 2 of 3): Learn, Engage...
Pre-Con Ed: CA Testing Tools Educational Session (Part 2 of 3): Learn, Engage...Pre-Con Ed: CA Testing Tools Educational Session (Part 2 of 3): Learn, Engage...
Pre-Con Ed: CA Testing Tools Educational Session (Part 2 of 3): Learn, Engage...
 
Pre-Con Ed: CA ACF2 and CA Top Secret – Part 1: What’s New in the Enterprise ...
Pre-Con Ed: CA ACF2 and CA Top Secret – Part 1: What’s New in the Enterprise ...Pre-Con Ed: CA ACF2 and CA Top Secret – Part 1: What’s New in the Enterprise ...
Pre-Con Ed: CA ACF2 and CA Top Secret – Part 1: What’s New in the Enterprise ...
 
LOS DERECHOS DE LOS ANIMALES
LOS DERECHOS DE LOS ANIMALESLOS DERECHOS DE LOS ANIMALES
LOS DERECHOS DE LOS ANIMALES
 

Similar to Websphere on z/OS and RACF security

Chapter 10:Understanding Java Related Platforms and Integration Technologies
Chapter 10:Understanding Java Related Platforms and Integration TechnologiesChapter 10:Understanding Java Related Platforms and Integration Technologies
Chapter 10:Understanding Java Related Platforms and Integration TechnologiesIt Academy
 
Lecture 19 dynamic web - java - part 1
Lecture 19   dynamic web - java - part 1Lecture 19   dynamic web - java - part 1
Lecture 19 dynamic web - java - part 1Д. Ганаа
 
Spring 3.1: a Walking Tour
Spring 3.1: a Walking TourSpring 3.1: a Walking Tour
Spring 3.1: a Walking TourJoshua Long
 
Rollin onj Rubyv3
Rollin onj Rubyv3Rollin onj Rubyv3
Rollin onj Rubyv3Oracle
 
Xenapp deployment-blueprint
Xenapp deployment-blueprintXenapp deployment-blueprint
Xenapp deployment-blueprintKunKun Ng
 
OpenProdoc Overview
OpenProdoc OverviewOpenProdoc Overview
OpenProdoc Overviewjhierrot
 
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15Dave Stokes
 
Azure - Data Platform
Azure - Data PlatformAzure - Data Platform
Azure - Data Platformgiventocode
 
Access Control Facilities in Oracle Database 11g r2
Access Control Facilities in Oracle Database 11g r2Access Control Facilities in Oracle Database 11g r2
Access Control Facilities in Oracle Database 11g r2Amin Saqi
 
Security and LDAP integration in InduSoft Web Studio
Security and LDAP integration in InduSoft Web StudioSecurity and LDAP integration in InduSoft Web Studio
Security and LDAP integration in InduSoft Web StudioAVEVA
 
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersSQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersTobias Koprowski
 
MySQL Webinar 2/4 Performance tuning, hardware, optimisation
MySQL Webinar 2/4 Performance tuning, hardware, optimisationMySQL Webinar 2/4 Performance tuning, hardware, optimisation
MySQL Webinar 2/4 Performance tuning, hardware, optimisationMark Swarbrick
 
ukoug2008-oracle-activedirectory-wi-131847.ppt
ukoug2008-oracle-activedirectory-wi-131847.pptukoug2008-oracle-activedirectory-wi-131847.ppt
ukoug2008-oracle-activedirectory-wi-131847.pptMartinCarrozzo
 
Oracle WebLogic Multitenancy, Partitions and Resource Sharing... How it works?
Oracle WebLogic Multitenancy, Partitions and Resource Sharing... How it works?Oracle WebLogic Multitenancy, Partitions and Resource Sharing... How it works?
Oracle WebLogic Multitenancy, Partitions and Resource Sharing... How it works?M. Fevzi Korkutata
 
MVC + ORM (with project implementation)
MVC + ORM (with project implementation)MVC + ORM (with project implementation)
MVC + ORM (with project implementation)Prateek Chauhan
 
SEASPC 2011 - SharePoint Security in an Insecure World: Understanding the Fiv...
SEASPC 2011 - SharePoint Security in an Insecure World: Understanding the Fiv...SEASPC 2011 - SharePoint Security in an Insecure World: Understanding the Fiv...
SEASPC 2011 - SharePoint Security in an Insecure World: Understanding the Fiv...Michael Noel
 

Similar to Websphere on z/OS and RACF security (20)

Ra framework 0.1
Ra framework 0.1Ra framework 0.1
Ra framework 0.1
 
Chapter 10:Understanding Java Related Platforms and Integration Technologies
Chapter 10:Understanding Java Related Platforms and Integration TechnologiesChapter 10:Understanding Java Related Platforms and Integration Technologies
Chapter 10:Understanding Java Related Platforms and Integration Technologies
 
Oracle OpenWorld 2014 Review Part Four - PaaS Middleware
Oracle OpenWorld 2014 Review Part Four - PaaS MiddlewareOracle OpenWorld 2014 Review Part Four - PaaS Middleware
Oracle OpenWorld 2014 Review Part Four - PaaS Middleware
 
Lecture 19 dynamic web - java - part 1
Lecture 19   dynamic web - java - part 1Lecture 19   dynamic web - java - part 1
Lecture 19 dynamic web - java - part 1
 
Spring 3.1: a Walking Tour
Spring 3.1: a Walking TourSpring 3.1: a Walking Tour
Spring 3.1: a Walking Tour
 
Rollin onj Rubyv3
Rollin onj Rubyv3Rollin onj Rubyv3
Rollin onj Rubyv3
 
Xenapp deployment-blueprint
Xenapp deployment-blueprintXenapp deployment-blueprint
Xenapp deployment-blueprint
 
OpenProdoc Overview
OpenProdoc OverviewOpenProdoc Overview
OpenProdoc Overview
 
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
 
Enterprise service bus part 2
Enterprise service bus part 2Enterprise service bus part 2
Enterprise service bus part 2
 
Azure - Data Platform
Azure - Data PlatformAzure - Data Platform
Azure - Data Platform
 
Access Control Facilities in Oracle Database 11g r2
Access Control Facilities in Oracle Database 11g r2Access Control Facilities in Oracle Database 11g r2
Access Control Facilities in Oracle Database 11g r2
 
Security and LDAP integration in InduSoft Web Studio
Security and LDAP integration in InduSoft Web StudioSecurity and LDAP integration in InduSoft Web Studio
Security and LDAP integration in InduSoft Web Studio
 
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginnersSQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
SQLSaturday#290_Kiev_WindowsAzureDatabaseForBeginners
 
Day2
Day2Day2
Day2
 
MySQL Webinar 2/4 Performance tuning, hardware, optimisation
MySQL Webinar 2/4 Performance tuning, hardware, optimisationMySQL Webinar 2/4 Performance tuning, hardware, optimisation
MySQL Webinar 2/4 Performance tuning, hardware, optimisation
 
ukoug2008-oracle-activedirectory-wi-131847.ppt
ukoug2008-oracle-activedirectory-wi-131847.pptukoug2008-oracle-activedirectory-wi-131847.ppt
ukoug2008-oracle-activedirectory-wi-131847.ppt
 
Oracle WebLogic Multitenancy, Partitions and Resource Sharing... How it works?
Oracle WebLogic Multitenancy, Partitions and Resource Sharing... How it works?Oracle WebLogic Multitenancy, Partitions and Resource Sharing... How it works?
Oracle WebLogic Multitenancy, Partitions and Resource Sharing... How it works?
 
MVC + ORM (with project implementation)
MVC + ORM (with project implementation)MVC + ORM (with project implementation)
MVC + ORM (with project implementation)
 
SEASPC 2011 - SharePoint Security in an Insecure World: Understanding the Fiv...
SEASPC 2011 - SharePoint Security in an Insecure World: Understanding the Fiv...SEASPC 2011 - SharePoint Security in an Insecure World: Understanding the Fiv...
SEASPC 2011 - SharePoint Security in an Insecure World: Understanding the Fiv...
 

More from Michael Erichsen

How to test a Mainframe Application
How to test a Mainframe ApplicationHow to test a Mainframe Application
How to test a Mainframe ApplicationMichael Erichsen
 
SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...
SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...
SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...Michael Erichsen
 
Java is a new language on the mainframe
Java is a new language on the mainframeJava is a new language on the mainframe
Java is a new language on the mainframeMichael Erichsen
 
A Natural Web Front End using CICS Transaction Gateway
A Natural Web Front End using CICS Transaction GatewayA Natural Web Front End using CICS Transaction Gateway
A Natural Web Front End using CICS Transaction GatewayMichael Erichsen
 
Automating the Donut Donation
Automating the Donut DonationAutomating the Donut Donation
Automating the Donut DonationMichael Erichsen
 
Through CICS OS/2 with 50 Million Peas an Hour
Through CICS OS/2 with 50 Million Peas an HourThrough CICS OS/2 with 50 Million Peas an Hour
Through CICS OS/2 with 50 Million Peas an HourMichael Erichsen
 
z13: New Opportunities – if you dare!
z13: New Opportunities – if you dare!z13: New Opportunities – if you dare!
z13: New Opportunities – if you dare!Michael Erichsen
 

More from Michael Erichsen (15)

ZCX Hybrid Application
ZCX Hybrid ApplicationZCX Hybrid Application
ZCX Hybrid Application
 
SMP/What?
SMP/What?SMP/What?
SMP/What?
 
ZD&T Survival Kit
ZD&T Survival KitZD&T Survival Kit
ZD&T Survival Kit
 
How to test a Mainframe Application
How to test a Mainframe ApplicationHow to test a Mainframe Application
How to test a Mainframe Application
 
A002 200 yearsofit
A002 200 yearsofitA002 200 yearsofit
A002 200 yearsofit
 
SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...
SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...
SOA Mainframe Service Architecture and Enablement Practices Best and Worst Pr...
 
Java is a new language on the mainframe
Java is a new language on the mainframeJava is a new language on the mainframe
Java is a new language on the mainframe
 
Gradueret adgang til EPJ
Gradueret adgang til EPJGradueret adgang til EPJ
Gradueret adgang til EPJ
 
A Natural Web Front End using CICS Transaction Gateway
A Natural Web Front End using CICS Transaction GatewayA Natural Web Front End using CICS Transaction Gateway
A Natural Web Front End using CICS Transaction Gateway
 
Automating the Donut Donation
Automating the Donut DonationAutomating the Donut Donation
Automating the Donut Donation
 
Trends but No Directions
Trends but No DirectionsTrends but No Directions
Trends but No Directions
 
Java on the Mainframe
Java on the MainframeJava on the Mainframe
Java on the Mainframe
 
Through CICS OS/2 with 50 Million Peas an Hour
Through CICS OS/2 with 50 Million Peas an HourThrough CICS OS/2 with 50 Million Peas an Hour
Through CICS OS/2 with 50 Million Peas an Hour
 
z13: New Opportunities – if you dare!
z13: New Opportunities – if you dare!z13: New Opportunities – if you dare!
z13: New Opportunities – if you dare!
 
Cobol 5 presentation
Cobol 5 presentationCobol 5 presentation
Cobol 5 presentation
 

Recently uploaded

Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptrcbcrtm
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanyChristoph Pohl
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 

Recently uploaded (20)

Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.ppt
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte GermanySuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
SuccessFactors 1H 2024 Release - Sneak-Peek by Deloitte Germany
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 

Websphere on z/OS and RACF security

  • 1. 19-11-15 07:11 PM 5864_ER_WHITE.1 WebSphere on z/OS and RACF Security Michael Erichsen & Adam Mazhar, CSC March 2006
  • 2. 19-11-15 07:11 PM 5864_ER_WHITE. 2 Purpose and contents of the Presentation • It is assumed that mainframe and Java people each on their side have a much deeper knowledge than the writer of this presentation – The ambition is solely to try to translate the two sides to each other to help better communicate and, consequently, to plan and execute the necessary work • The presentation begins at the traditional RACF model and the normal Java Sign-on Model – It then shows how the Java model is implemented in RACF – It finally compares this new model to the traditional CICS security model
  • 3. 19-11-15 07:11 PM 5864_ER_WHITE. 3 What is RACF? • RACF means Resource Access Control Facility • RACF is really just a data base sitting passively, waiting for someone to ask questions • RACF stores lists of groups of users, each having a password and a number of profiles – Groups can contain groups • RACF also stores lists of resource classes, each having a number of profiles and members • The programming interface to inquire RACF is called SAF (System Authorization Facility) and consists of a number of macro calls – The main macro calls are • RACROUTE,REQUEST=VERIFY to verify user IDs • RACROUTE,REQUEST=AUTH to check against access to a secure profile
  • 4. 19-11-15 07:11 PM 5864_ER_WHITE. 4 Some RACF Class Examples Default RACF Classes Description CBIND Controls the client’s ability to bind to the server. With WebSphere we need to control access to the server DATASET Access to data sets DIGTCERT Contains digital certificates and information related to them DSNR Controls access to DB2 subsystems (CONNECT) EJBROLE Member class for J2EE authorization roles. The APPLDATA field in an EJBROLE profile defines the target Java identity when running in RUNAS ROLE mode FACILITY Can be used for anything you want GCICSTRN Grouping class for CICS Transactions GEJBROLE Grouping class for Enterprise Java Beans authorization roles MDSNDB MDSNPK MDSNPN MDSNBP MDSNCL MDSNTS MDSNSG MDSNTB MDSNSM MDSNSC MDSNUT MDSNUF MDSNSP MDSNJR DSNADM Default Classes for DB2 External Security. Special classes exist for Buffer pools, collections, databases, packages, plans, storage groups, subsystems, tables, table spaces, etc TCICSTRN CICS Transactions SERVAUTH Can be used to protect TCP/IP ports SERVER Used in WebSphere to control whether a server region can call authorized programs in the control region
  • 5. 19-11-15 07:11 PM 5864_ER_WHITE. 5 Traditional RACF Profiles and Permission Levels • TCICSTRN profiles typically contain all transactions in an application or part of an application – Can be named whatever is appropriate • DSNR profiles have names of the form subsystem.environment – Subsystem is the name of a DB2 subsystem – Environment denotes the environment like SASS for CICS, DIST for Distributed, BATCH for batch and some other types of workload • User profiles consists of one or more segments: – A mandatory RACF segment, which holds basic information like name, password etc. – Optional segments with system-specific data including CICS, LANGUAGE and many others • Groups of users (or single users) are permitted access to a profile in a class in levels, each of which include lower levels: – ALTER, CONTROL, UPDATE. READ, EXECUTE, NONE
  • 6. 19-11-15 07:11 PM 5864_ER_WHITE. 6 Java Security • Authentication – Basically checks the user's login name and password and allows access to step inside the application realm • Authorization – Allows access to specific functions of a given application like: • Screens (for example only a select people might be able to access Create New Person screen) • Fields (For example only a select people might be able to see all fields on a query result screen or Create screen) • Buttons (For example on a screen where there is an Update and Delete buttons, only certain people can do Deletes) • Data (For example cases for a certain region can only be seen by users of that region, in other words restricting the where clauses of the queries based on certain key data elements)
  • 7. 19-11-15 07:11 PM 5864_ER_WHITE. 7 EJBROLES • Roles, as defined by J2EE, are not inherent in the mainframe security model • In order to implement J2EE roles, a new class, EJBROLE, was created – The name EJBROLE is not adequate, since it is used for J2EE roles in both EJB’s and Web applications • When an application deployer uses a role in a component’s deployment descriptor, the role name must be identical to the name of an EJBROLE profile • A security administrator defines EJBROLE profiles and permits groups of users to the profiles • In order to be considered as eligible for a role, a user must be connected to a group that has read access to the EJBROLE profile – You can define single users directly to resources, but that often makes administration very complicated
  • 8. 19-11-15 07:11 PM 5864_ER_WHITE. 8 GEJBROLE • RACF also supports a grouping class for the EJBROLE class called GEJBROLE • Used when you have a need to give access to the same groups for several roles • The GEJBROLE grouping class provides a capability not natively available in other J2EE servers • Probably practical, but certainly not portable
  • 9. 19-11-15 07:11 PM 5864_ER_WHITE. 9 Downstream Propagation of Userids From WebSphere Authorization isCallerIn Role() getCallerPrincipal() Method Execution Downstream Propagation RunAs=Server Identity="Caller" Identity=Server-Identity RunAs=Caller Identity="Caller" RunAs=Role(x) Identity=Role(x) mapped to RACF identity RunAs is a J2EE option that allows a bean to temporarily run as the server identity or the identity of a role that the user has This effectively corresponds to the CICS-DB2 interface definition AUTHID, which can be SIGNID (CICS Name), USERID, TERM (terminal id), TXID (Transaction code), or any string
  • 10. 19-11-15 07:11 PM 5864_ER_WHITE. 10 CICS and RACF Security in the 3270 World
  • 11. 19-11-15 07:11 PM 5864_ER_WHITE. 11 Where is all this Stored? • At sign-on time CICS builds a control block in memory representing the connection between terminal id and userid • This connection is kept until sign-off or time-out • CICS knows that a user is not signed on, when this connection does not exist in its control blocks • The resource classes and profiles are stored in a memory area shared by all systems (CICS’s, WebSphere’s, DB2’s, TSO users etc)
  • 12. 19-11-15 07:11 PM 5864_ER_WHITE. 12 WebSphere and RACF Security
  • 13. 19-11-15 07:11 PM 5864_ER_WHITE. 13 Where is all this Stored? • At sign-on time WebSphere creates a cookie containing a security token, which represents the userid • WebSphere knows that a user is not signed on, when this cookie and token is not in the header of a request • This has been implemented by the WebSphere developers as a form based authentication – Necessary features like authentication failures, password expiration and renewal is implemented as a Servlet Filter • A servlet filter is equivalent to a user exit in CICS • The resource classes and profiles are stored in a memory area shared by all systems (WebSphere’s, CICS’s, DB2’s, TSO users etc)
  • 14. 19-11-15 07:11 PM 5864_ER_WHITE. 14 EJBROLE Implementation • Defining a role in RACF – RDEFINE EJBROLE My.Web.Application.Role UACC(NONE) • Giving permission to a group of users – PERMIT My.Web.Application.Role CLASS(EJBROLE) ID(MYUSERS) ACCESS(READ) • If the user registry custom property com.ibm.security.SAF.authorization is set to true, then EJBROLE profiles are used to authorize J2EE roles • If the user ID has at least READ access to the defined EJBROLE profile the user ID is considered to be in Role • If you want to give access to the same groups for several roles, you can groups EJBROLE classes in a GEJBROLE class
  • 15. 19-11-15 07:11 PM 5864_ER_WHITE. 15 Further Reading • Available online at www.redbooks.ibm.com/ abstracts/sg246846.html

Editor's Notes

  1. In production systems the authentication message is normally suppressed and a menu screen presented
  2. Default Form-based support - detailed flow This flow specifies the role of the Security Collaborator and describes the HTTP cookies involved. 1. On the first request, a user issues a GET for a protected resource. 2. The Web container security collaborator of the target WebSphere server identifies the request as protected. 3. The collaborator checks to see if a trust association interceptor has been configured. 4. If no trust association interceptor is configured, it searches the request headers for a security token. 5. Since this is the first time that the user has issued a request, there is no such token. It then searches the deployment descriptor for the type of authentication specified for this resource, which is found to be “form”. The collaborator searches the configuration for the name of the form to be sent back to the client. It is at this point that a cookie named WASReqURL is created. This cookie is used to keep track of the client’s original URL request. 6. A redirection to the configured login form is sent to the client, together with the WASReqURL cookie. 7. The client receives the redirection and issues a GET for the form. 8. The client receives the form, completes it and posts to the specified j_security_check action, passing the WASReqURL cookie. 9. The security collaborator obtains the predefined fields from the form and checks with RACF to make sure they are legitimate. 10.If successful, it creates a security token using the server’s configured ICSF key, creates a cookie called ltpa, and puts the token inside of it. 11.The security collaborator also reads the WASReqURL cookie to know where the client wanted to go before the authentication happened and sends a redirect to the client specifying the URL found in the cookie. After WASReqURL is read, it is discarded. 12.If session affinity is configured, another cookie, JSESSIONID, is created. This cookie has no security information. Its mandate is to provide session routing information to the different WebSphere components to enable the correct routing of subsequent requests during the same client session to the same server region that last fulfilled the request. 13.The client gets the redirect, together with the ltpa cookie (and possible JSESSIONID). 14.The client requests access to the protected resource. 15.The security collaborator sees that it is a protected resource and checks for the existence of the cookie “ltpa” (Lightweight Third Party Authentication ). If it is there, it extracts the token and tries to decrypt it using the Server’s configured ICSF key. If successful it gives access to the wanted resource. On subsequent requests, as long as the security credentials are valid, only steps 14-15 reoccur. It should be noted that the ltpa cookie has nothing but the name in common with the Lightweight Third Party Authentication approach commonly found in WebSphere distributed installations.