Successfully reported this slideshow.

Single Sign-On for APEX apps

2.821 Aufrufe

Veröffentlicht am

Presentation about how to setup your APEX environment to enable single sign-on with kerberos.

Veröffentlicht in: Technologie

Single Sign-On for APEX apps

  1. 1. Technical Deep Dive: SSO for your APEX apps Niels de Bruijn July 4th, 2016
  2. 2. Facts & Figures Independent Technology House with Cross-Industry Expertise Headquarter Ratingen (North Rhine – Westphalia) 180 Employees Founded 1994 Branches Dortmund, Cologne, Frankfurt Top Company for Trainees & Students Privately- Owned Corporation Oracle Platinum Partner 24 Mio. Euro Revenue 2Single Sign-On for your APEX apps
  3. 3. 3 About me § Niels de Bruijn, Business Unit Manager APEX § Born in 1977, married, three daughters, living in Ratingen § Working for MT AG since DEC-2003 § After working for 2 years as Oracle consultant for Oracle Nederland B.V. § Track record with APEX since its inception § Responsible for all APEX activity in the company § Knowledge Portal: § Presenting at Kscope, DOAG Conference, APEX Connect § DOAG – Initiator & Conference Chair of APEX Connect § ODTUG - Part of APEX Content Committee for Kscope Single Sign-On for your APEX apps
  4. 4. § Single Sign-On § Demo time § How does the magic work? § Caveats § I want more § Questions I get § More information 4 Agenda Single Sign-On for your APEX apps
  5. 5. For the sake of security § Credentials are not passed to the database § Kerberos is secure (as used by Windows itself) § Central user store in Active Directory § No corporate password policy needed within APEX For the sake of productivity § End users love it § Developers can now switch between workspaces without logging in again 5 Single Sign-On Single Sign-On for your APEX apps
  6. 6. 6 How does the magic work? 8009 Single Sign-On for your APEX apps
  7. 7. Start here: signonforapexapplicationsusingkerberos-46435415 Overview § Install RDBMS & APEX § Install JDK, Tomcat & Apache/IIS § Configure ORDS & deploy § Configure Apache or IIS for SSO incl. SSL certificate General installation steps of Apache & ORDS can be found here: 7 How does the magic work? Single Sign-On for your APEX apps
  8. 8. § Map existing APEX accounts with their AD username APEX_UTIL.SET_USERNAME ( p_userid => APEX_UTIL.GET_USER_ID('ADMIN') , p_username => 'NDBRUIJN' ); § When using mod_auth_kerb and AD user is member of too many AD groups § Have a look here: authentication-problem-with-active-directory.aspx § Once enabled, you can’t change the identity without changing the OS user § Prepare your end users § Testing with other credentials: just switch the authentication scheme to “open door” in the dev environment 8 Caveats Single Sign-On for your APEX apps
  9. 9. § What about people not listed in Active Directory? § Chained authentication schemes are currently not possible in APEX § Please vote for feature request AOE6 on § Workaround: Use 3th party software like Microsoft Forefront (no change in ORDS/APEX needed) § What about devices like MacBooks or Smartphones that are not part of the Windows domain? § Fallback Authentication using Basic Authentication over HTTPS § Tipp: don’t use Digest Authentication (doesn’t work with Firefox) § Don’t want to enter username/password? Client certificates will help you out. § What about the Cloud? § Active Directory will remain on site for a while § Just keep IIS or Apache as reverse proxy onsite for authentication purposes and use Oracle Cloud for ORDS / APEX (hybrid cloud solution) 9 I want more Single Sign-On for your APEX apps
  10. 10. § “Should we still specify the same cookie name for all apps in our workspace?” § Yes, this prevents multiple APEX session cookies being created § “We have LDAP authentication utilized in our APEX app” § Are you sure you want to pass your AD credentials to the database? § “What about the rights in my app?” § We are talking about authentication here, the authorization is normally determined by the app § You could user dbms_ldap or apex_ldap.is_member to get privs § “Any concerns about the session timeout setting in APEX?” § Set it to 0 (= indefinitely) as session timeout is now delegated to Kerberos 10 Questions I get Single Sign-On for your APEX apps
  11. 11. § “The logout link in my app doesn’t work anymore” § Well, just delete it § “How can I check if the user may access the app?” § Use an authorization scheme 11 Questions I get Single Sign-On for your APEX apps
  12. 12. § General installation steps of Apache & ORDS can be found here: § About Kerberos § About mod_auth_kerb § More SSO options 12 More information Single Sign-On for your APEX apps
  13. 13. @nielsdb