I'll Get My Coat

Identity Management? I'll Get My Coat...


Monday Jan 14, 2008

Sun Grenoble Engineering Identity/Desktop Event

This coming week at the Grenoble Engineering Center I'll be presenting on the subject of Identity Management within the scope of desktop virtualisation, in particular integration with the Sun Secure Global Desktop product.   The agenda can be found here

The background to this was a proof of concept that I performed with Simon Ross and Graham Hares both Sun UK employees at a major communications customer within the UK.

 The technology integration was actually really quite straightforward, as a side thought, isn't this always the case, if it involves custom coding and buckets of glue it's likely it ain't gonna fly let alone scale.

We used the new version 4.4 of Secure Global Desktop (SGD) along with the Java Enterprise 5 release for Access Manager and Identity Manager. Without detailing every single configuration step the high level picture goes like this. We wanted to be able to achieve the following:

  • Single Sign On into Secure Global Desktop via Sun Access Manager using LDAP auth
  • Provision applications onto the SGD webtop using Sun Identity Manager
  • Provision user access to SGD using Sun Identity Manager workflow
  • Authorize application access via an external means, aka - LDAP group membership
  • Manage the SGD Password Cache such that when a user being managed by Identity Manager changed their password the SGD Password Cache was updated appropriately.

We achieved the first object using the Sun Access Manager Policy Agent 2.2 for Apache webserver 1.3, since SGD 4.4 uses Apache Webserver as the front end http listener. Install the policy agent in the usual manner making sure that this value is set within the AMAgent.properties file:

com.sun.am.policy.agents.config.profile.attribute.fetch.mode=HTTP_HEADER

 

This setting ensures that the userId of the authenticated session is passed through to Apache and then ultimately through to the Tomcat server that actually runs the majority of SGD. In order to complete the SSO through to SGD one needs to configure SGD for third party authentication. The SSO works since SGD inspects the servlet environment variable of REMOTE_USER and if present creates a user session.

The key step here (doco) in order to get it working is to modify the Tomcat server.xml to look like the following, this ensures that Apache forwards the value of REMOTE_USER to the Tomcat engine:

 

 <!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->
    <Connector port="8009" minProcessors="5" maxProcessors="75"
               enableLookups="true" redirectPort="8443"
               acceptCount="10" debug="0" connectionTimeout="0"
               useURIValidationHack="false" tomcatAuthentication="false"
               protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"/>

 

The great thing is that SGD can be configured to run it's authentication and application policy engine from an external source, such as an LDAP server. This is termed, Directory Services Integration within SGD land and can be read about here the ideal companion here is the Sun LDAP Directory Server.

 Using the Sun Access Manager Realm ResourceAdapter from within Sun Identity Manager we provisioned users directly into Access Manager giving them the ability to SSO into SGD.  Using Identity Manager workflow self service workflows enabled users to request access to Access Manager LDAP Groups which drive the application visibility from their SGD webtop.

So the Sun Directory Server is the backbone here, providing the persistent storage for users and groups. This LDAP server provides the SSO repository as well as for the means for application access from SGD (if a user is within this particular LDAP group then they get access to this application from SGD).

So yes this was brief and not a detailed write up but what it proves is that it is possible and fairly straight forward to protect Secure Global Desktop using the Sun Java System Access Manager and provide Single Sign On services. This brings about a ton of advantages let alone the possibility of using one of the many authentication schemes provided by Access Manager out of the box.






 

Tuesday Dec 18, 2007

Forrester Wave

Having just spent a week locked in a snow bound room at the Sun Burlington campus I'm pleased to say that we successfully completed the Forrester Wave event. Forrester sent over an Identity Management analyst who walked through a thorough set of use-cases regarding Identity Management.

Now some of you might remember back in January 2006 Sun where voted by Forrester the leader in the User Provisioning Market with our Sun Java Systems Identity Manager product.

It was a real challenge to demonstrate all the use-cases in the one day time limit we were given, usually to walk through such a wide range of topics relating to Identity would take at least several days if not a week. Forrester where interested in seeing Identity Management use-cases relating to use compliance (certification and SOD), ease of provisioning to federation and access management (both Web SSO and Enterprise SSO). Needless to say we where all impressed by the stamina and range of knowledge with the Forrester analyst, not many people could keep up with the huge array of Identity Management experience and knowledge that Sun fielded that cold day in Boston.

Expect to see the report from Forrester in the first quarter of 2008.

Tuesday Nov 27, 2007

Enterprise Role Management, any good?

If you follow Identity Management and have been awake recently you'll have seen the buzz around the Vaau "intent to acquire" made by Sun, if not check here. I had the privilege to work alongside Vaau on a proof of concept recently for a major UK retail financial institution. This particular prospect had requirements for Identity, Access and Role Management and had selected Sun and another vendor.

The requirements where pretty typical these days I'd guess and an increasing number of deals are mandating that RBAC be included in their product evaluation criteria:


  1. User Onboarding using complex rule based provisioning

  2. Approval based User provisioning

  3. User Certification

  4. Audit & Reporting

  5. Role Mining and Role Management



So what does Role Mining and Role Management actually mean?
In we went with the Vaau RBACx product and Sun Identity Manager version 7.1 First steps where to integrate the two products, Tomcat was selected for ease and speed of installation as the web container for the two products. In little more than a couple of hours we had both RBACx and Identity Manager products up and running on good old :8080 Integration between the products is simple and effective (most things worth their salt are aren't they?) using SPML SOAP calls to pass information relating to Users, Roles and Role Membership between RBACx and Identity Manager. Here's a rough stab at the methodology assumptions in place:

  1. Build an Identity Warehouse containing users and their access to all critical applications (both managed and non-managed systems)
  2. Launch certification and audit (continuous monitoring)

  3. Start deployment of IdM solution (unless one exists already)

  4. Perform Role Engineering in RBACx (using a hybrid approach, both top down and bottom up)

  5. Require Manager sign-off on candidate Roles

  6. Assign Role Owners to Roles

  7. Export roles into the Sun IdM solution

  8. Perform continuous role management


The sample data set provided by the customer wasn't extremely large and contained pretty well uniquely defined roles, such that say the HR extract contained 50 records per business unit each User within the BU had a distinct job function. This made mining on HR data pretty pointless for the product eval since we'd have ended up with 50 Roles and 50 Users, it was the ability for the product to aggregrate the data provided (remember it's just a test and not a complete set of user attributes). So we performed the Role Mining based upon business unit and not solely the HR data. This worked extremely well, identifying the Roles and User Role Memberships, exporting these information into Sun Identity Manager using the SPML protocol and then re-provisioning any Users who's current resource account entitlements differed from what was certified within the Enterprise Role Management tool.

Both tools worked extremely well together, non-intrusive, easy to configure, both web based and both responsible for their own domain within Identity Management. With the pending acquisition of Vaau and their RBACx product Sun will become well placed to chase the pure-play User & Role Certification opportunities currently out of their reach.



For more information on RBACx and Sun Identity Manager check out this link

Sun Identity Manager 7.1 Update 1 RELEASED!

Not a major release but the first official update for the provisioning product of choice, Sun Identity Manager, readme can be found here Enjoy

Powered by ScribeFire.

Realm or Legacy?

If you've ever, like me, wanted to know if an Access Manager installation has been deployed in Realm mode or not there's a simple test you can perform from within the browser

http
://FQDN_server:port/amserver/SMSServlet?method=isRealmEnabled


Powered by ScribeFire.

DSEE 6.2 Windows Server 2003 Installation Notes

DSEE 6.2 Windows Server 2003 Installation Notes

Obtain the zip file from here

  1. Unpack the DSEE6.2 zip file... c:\Temp\DSEE62 using folder names
  2. c:\Temp\DSEE62\dsee_deploy install --install-path c:\DSEE62 --no-inter
  3. C:\DSEE62\ds6\bin>dsadm create -p 44444 -P 44445 c:\DSEE62\sedemo
    Choose the Directory Manager password:
    Confirm the Directory Manager password:
    Use 'dsadm start 'c:\DSEE62\sedemo'' to start the instance
  4. C:\DSEE62\ds6\bin>dsadm start c:\DSEE62\sedemo
    Waiting for server to start...
    Waiting for server to start...
    Server started: pid=8132
  5. C:\DSEE62\ds6\bin>dsadm stop c:\DSEE62\sedemo
    Server stopped
  6. C:\DSEE62\ds6\bin>dsadm enable-service --type WIN_SERVICE c:\DSEE62\sedemo
    Instance c:/DSEE62/sedemo registered in WIN_SERVICE
  7. Deploy the DSCC
    Stop Tomcat
    Copy C:\DSEE62\var\dscc6\dscc.war to Tomcats webapps folder
    Start Tomcat
  8. C:\DSEE62\dscc6\bin>dsccsetup initialize
    ***
    DSCC Application cannot be registered because it is not installed
    ***
    DSCC Agent is already registered
    ***
    Choose password for Directory Service Manager:
    Confirm password for Directory Service Manager:
    Creating DSCC registry...
    DSCC Registry has been created successfully
    ***
  9. C:\DSEE62\dscc6\bin>dsccreg add-server -d SEDemo_Directory c:\DSEE62\sedemo
    Enter DSCC administrator's password:
    c:\DSEE62\sedemo is an instance of DS
    Enter password of "cn=Directory Manager" for c:\DSEE62\sedemo:
    Enter password of "cn=Directory Manager" for c:\DSEE62\sedemo:This operation will restart c:\DSEE62\
    sedemo.
    Do you want to continue ? (y/n) y
    Starting c:/DSEE62/sedemo
    Connecting to c:/DSEE62/sedemo
    Enabling DSCC access to c:/DSEE62/sedemo
    Restarting c:/DSEE62/sedemo
    Registering c:/DSEE62/sedemo in DSCC on localhost.
Et voila.... everything works first time... not bad for those Sun critics that say our products aren't great on Windows!!! :)






Powered by ScribeFire.


Today's Page Hits: 43