410 likes | 584 Views
Progress Software. Identity Management 101. Sarah Marshall OpenEdge QA Architect May 2012. What is Identity Management?. About protecting your data. About verifying and controlling who accessing your data. About minimizing where and when you verify who is accessing your data .
E N D
Progress Software Identity Management 101 Sarah MarshallOpenEdge QA Architect May 2012
What is Identity Management? About protecting your data About verifying and controlling who accessing your data About minimizing where and when you verify who is accessing your data And what happens if your not authorized!
Building blocks to IdM Authentication systems Systems you will use (or are using) to maintain your list of users
Building blocks to IdM Domain configuration Categories of users that have in common the data they can access Authentication systems Systems you will use (or are using) to maintain your list of users
Building blocks to IdM Configurations for individual users defining their access privileges Authorization configuration Domain configuration Categories of users that have in common the data they can access Authentication systems Systems you will use (or are using) to maintain your list of users
Building blocks to IdM Architecture to support IdM Single point of identity management for all systems Configurations for individual users defining their access privileges Authorization configuration Domain configuration Categories of users that have in common the data they can access Authentication systems Systems you will use (or are using) to maintain your list of users
The CLIENT-PRINCIPAL Built in ABL security token CREATE CLIENT-PRINCIPAL hCP hCP:INITIALIZE(…) Set current identity in any session db connection SECURITY-POLICY:SET-CLIENT(hCP) SET-DB-CLIENT(<dbname>, hCP) Created by the AVM if not created explicitly SETUSERID(<userid>, <psswd>, <dbname>) cmd> $PROEXE –U <userid> -P <psswd> Manage a user’s login session rCP = hCP:EXPORT-PRINCIPAL hCP:LOGOUT()
The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START Game over FINISH OE DB Logged in Expired! Client AS C DB Logout AS DB
The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START Game over FINISH OE DB Logged in Expired! Client AS C DB Logout AS DB
The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START Game over FINISH OE DB Logged in Expired! Client AS C DB Logout AS DB
The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START Game over FINISH OE DB Logged in Expired! Client AS C DB Logout AS DB
The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START Game over FINISH OE DB Logged in Expired! Client AS C DB Logout AS DB
The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START Game over FINISH OE DB Logged in Expired! Client AS C DB Logout AS DB
The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START Game over FINISH OE DB Logged in Expired! Client AS C DB Logout AS DB
The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START Game over FINISH OE DB Logged in Expired! Client AS C DB Logout AS DB
The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START Game over FINISH OE DB Logged in Expired! Client AS C DB Logout AS DB
Authentication systems The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START Game over FINISH OE DB Logged in Expired! Client AS C DB Logout AS DB
Authentication systems The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START Kerberos Game over FINISH LDAP OE DB Logged in Expired! Client AS C DB Logout AS DB
Authentication systems The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START Kerberos Game over FINISH LDAP OE DB Logged in Expired! Client AS C DB Logout AS DB
Authentication systems The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP OpenID START Kerberos Game over FINISH LDAP OE DB Logged in Expired! Client AS C DB Logout AS DB
Authentication systems The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START _sec-authentication-system Game over FINISH _Domain-type: _oeusertable _oslocal _extsso User Defined OE DB Logged in Expired! Client AS C DB Logout AS DB
Domain configuration What are domains?
Domain configuration Defining domains • Have roles and responsibilities in common • Have level of security in common • Have data access privileges in common _sec-authentication-domain _Domain-name _Domain-type _Domain-description _Domain-access-code _Domain-runtime-options _Tenant-name
Domain configuration Using domains The client uses the domains defined in a database SECURITY-POLICY:LOAD-DOMAINS(DB1) 1. Each database can use it’s own domain registry 2. Each database can share the session’s registry Client OE DB1 OE DB2 OE DB3 OE DB4
Authorization configuration User permissions • Authorization for individuals • Table and field level permissions: CAN-* fields • Runtime persmission: CAN-DO()function CAN-DO(“*.Admin”)
The Game Board Login Create C-P Authentication LDAP User Account System LDAP LDAP START Game over FINISH OE DB Logged in Expired! Client AS C DB Logout AS DB
Architecture to support IdM Security Token Service Create C-P Authentication User Account System LDAP LDAP LDAP User Credentials Security Token Service • take login information AS • runs authentication plug-in C DB • seals CLIENT-PRINCIPAL • makes it available to the application
Architecture to support IdM Security Token Service Login Security Token Service START Game over FINISH OE DB Logged in Expired! Client AS C DB Logout AS DB
Architecture to support IdM Anatomy of an STS Login DB AS DB DB AS AS ABLClients OpenClients AdapterClients DB Credentials Domains CCID ABL STS AppServer AuditTrail Domains OpenEdge Session … LDAP _User OpenID OEDB TBD
Architecture to support IdM Anatomy of an STS Login DB AS DB DB AS AS ABLClients OpenClients AdapterClients DB Domains CCID = Client Context Identifier CCID ABL STS AppServer AuditTrail Domains OpenEdge Session … LDAP _User OpenID OEDB TBD
Architecture to support IdM Anatomy of an STS Login DB AS DB DB AS AS ABLClients OpenClients AdapterClients DB Domains CCID ABL STS AppServer AuditTrail Domains OpenEdge Session … LDAP _User OpenID OEDB TBD
Architecture to support IdM Anatomy of an STS Login DB AS DB DB AS AS ABLClients OpenClients AdapterClients DB CCID Domains ABL STS AppServer AuditTrail Domains OpenEdge Session … LDAP _User OpenID OEDB TBD
Architecture to support IdM Anatomy of an STS Login DB AS DB DB AS AS ABLClients OpenClients AdapterClients DB CCID Domains ABL STS AppServer AuditTrail Domains OpenEdge Session … LDAP _User OpenID OEDB TBD
Architecture to support IdM Anatomy of an STS Login DB AS DB DB AS AS ABLClients OpenClients AdapterClients DB Domains ABL STS AppServer AuditTrail Domains OpenEdge Session … LDAP _User OpenID OEDB TBD
Architecture to support IdM Anatomy of an STS Login DB AS DB DB AS AS ABLClients OpenClients AdapterClients DB Domains ABL STS AppServer AuditTrail Domains OpenEdge Session … LDAP _User OpenID OEDB TBD
Architecture to support IdM Anatomy of an STS Login DB AS DB DB AS AS ABLClients OpenClients AdapterClients DB Domains ABL STS AppServer AuditTrail Domains OpenEdge Session … LDAP _User OpenID OEDB TBD
Building blocks to IdM Architecture to support IdM Single point of identity management for all systems Configurations for individual users defining their access privileges Authorization configuration Domain configuration Categories of users that have in common the data they can access Authentication systems Systems you will use (or are using) to maintain your list of users