Identity management


I spent the last years working on IT services to improve higher education: video infrastructures, collaboration tools, digital assessments and digital learning. Coming back to visit the middleware/identity world after  five years away is interesting.

Some of the trends that keep pushing the identity field if I compare with 2012:

  • Virtual, not physical: servers are virtualized and roam around in data centers, people have multiple devices and require virtual identities that roam across devices, the borders are more fuzzy between hardware and software in SDN or IoT or apps
  • Multiple devices per person: a smart phone, a tablet and a PC/Mac is not unusual; not to mention the IoT and hordes of sensors
  • From silos to microservices and APIs: modular approaches require more traffic between components, moving some complexity out of silos; outsourcing services internally in the applications is more comme il faut, apps should be lightweight. This trend moves one of the important scaling factors for identity solutions, we no longer scale to a few thousand services, but scaling needs to be for a few million services.
  • Identity for things: Internet of Things requires identity, or binding information to identity, thus introducing large scale device identity requirements
  • Data centric identity: when we move from application centric to data centric, identity requirements morph from being used to secure application access to verifying relationships between users and data.
  • Cloud based identity: the closed gardens of the big cloud infrastructures have their own identity infrastructures (Apple-ID, Google, Facebook, AzureID/LinkedIn/Outlook.com), and these user centric approaches provide some interaction mechanisms for organization centric solutions.

These are some of the changes I see, but I will spend the next months looking around the field of identity and integration,  trying to figure out what a research network needs to provide for its customers.

The hottest thing in higher ed is MOOC. And one of the hottest MOOC platforms is Coursera.

Keyboard image

Wikipedia keyboard image

There are couple of challenges the MOOC movement is about to run into:

  1. How do we know that the person submitting a test is the same person she claimed to be before? Identity proofing in a self-declared identity environment is not trivial. MOOCs are by definition open
  2. If we want to make money, we better be able to give credits (or badges, or certificates, or a university degree, or something similar). Solutions include test submission with identity proofing.

Then comes the scary part: Coursera offers a Signature Track, where you as a student get identity verification, verified certificates and sharable course records. This is innovative and new. And the way they do it scares me because of the implications for the student and for other services online (biometric unique typing pattern). There is a Signature Track Guidebook with more details

The unique typing pattern is used to identify your work

“Signature Phrase, a biometric profile of your unique typing pattern. Every time you submit coursework, you’ll easily authenticate your identity by typing your Signature Phrase.”

If this is really workable, I am not sure I want to use any cloud service (like WordPress for this blog, or Gmail) where I type in text. Selling the unique typing patterns for their 2.8 million learners would, however, probably fund the company for the rest of its natural life. It also opens a whole new game of trust issues for any of us using online services. So far the typing part is only available on PC/Mac, and not on tablets

Hopefully I am wrong to be scared.

We need to find a better way to do identity proofing.

A memo on securing the web, entitled An Inquiry into the Nature and the Causes of Web Insecurity was published by Mike Hanson, Hannes Tschofenig and Sean Turner as an Internet-Draft in October 2011. This document is well worth reading, and I am looking forward to further work from the authors.

The memo points out that the current security measures on the web are designed for static text-based one-site content, whereas the current web is real-time, multi-site and has moved from documents to mobile code. Some of the issues with passwords are pointed out, and three types of goals are presented:

  1. Reduce the number of passwords used
  2. Increase the safety and security of how passwords are used
  3. Broaden the use of other credentials

Proposed guiding principles:

  • moving authentication down into the platform: Methinks not letting every single web developer reinvent the security wheel is a good thing
  • design for growth and multiple authentication mechanisms and credentials: the world changes,
  • context matters: exposing minimal information depends on getting context sorted out
  • transform long-term password to short-term credentials: the sloppy practices of not verifying end points will come back to haunt us
  • keep the user experience in mind: investigate failure scenarios and provide user feedback.
  • go from client-server to N-Party: Federated login and other multiple party solutions

Please read the Internet draft and give feedback to the authors!

Google+ is subject to a #nymwar discussion about the requirement to use Real Names. Google+ has shut down a large number of accounts, for example for IdentityWoman. The movement for use of pseudonyms have launched My Name Is Me, where the arguments for pseudonyms are presented. Some arguments are:

  • the right not to be stalked or persecuted (whistle blowers, abuse survivors,  people from small communities, sexual minorities)
  • wanting to have multiple persona, choosing nick names presenting yourself, celebrities (Lady Gaga, Bob Dylan, Madonna …)
  • being able to voice personal opinions without being associated with employer (academics, fans, bloggers, journalists, military)

Earlier this year, SXSW discussed Social Network Users’ Bill of Rights, and there was agreement on most of the points proposed. The one point with most discussion (and least agreement) was the right to use pseudonyms. Kim Cameron commented on his blog that imposing pseudonyms on all social sites breaks the laws of identity.

In Norway we have a debate about how public online discussion forums may avoid hateful and cesspit discussion. There is a need for participants to be held accountable for their opinions, but in my opinion not necessarily to expose legal identities. The federations in higher education are currently handling both Real Names, nicknames and pseudonymous/anonymous access

  1. Real Names are present in the identity management system, because the universities need these names to issue formal credentials (PhDs, MS etc) and bind the formal credentials to formal legally registered names.
  2. Nicknames are present in the attribute definitions, but we are still in the process of sorting out what are the most practical ways of sharing this information. There is ongoing debate about consent and necessity for attribute sharing, and displayName is an attribute we need to think more about. Feide decided to require both legal name (Real Name = norEduLegalName) and preferred name (nick = displayName)
  3. Federations provide anonymous traceable access, based on technology for per service unique identifiers .

We need to find a balance online, as we have for other aspects of public space where we do not need to post information about identities for each person, but in many cases require that identity is traceable. Minimal exposure of information is good, but defining minimal is difficult.

David Bantz posted an interesting email Please, somebody talk me down! on the Shibboleth users list, pointing to four issues that crop up over and over again with SSO in higher education:

  • Even if a vendor claim to support SAML, they are unable to consume attributes. And the provisioning of attributes include both sensitive, restricted and open information.
  • Proprietary extensions are used for too many of our solutions
  • Credential relays, operated by non-trusted third party (or SP). Preferably combined with non-maintenance of SP software?
  • Why not just use AD? Believing that using AD will automagically  integrate all services.
The scary summary is that we as a community are not providing enough direction when it comes to SSO solutions.
For some of these issues (why AD does not solve all problems, credential relays) we need to explain the issues in a language that may be understood, or even better, put into calls for tender. For other issues there are unsolved technical problems, like the integration of web-SSO and non-web-SSO.  The concept of real-time attributes, so beloved of higher education federation, is poorly understood by most vendors. Then again, they are not used to operating in a world where user account lifetime is planned per semester.
I am hoping that REFEDS may be a place to work on some of the issues pointed out, but the bulk of the work will have to be done by each individual university as they call for tender and discuss with their application suppliers and partners.

Google launched testing of google+ last week. One interesting feature is the concept of circles: sorting your friends into friends, family, acquaintances and cool-people-to-follow. The interface for sorting friends is OK, and I may add my own circles.

The idea of using circles got me thinking about overlaps and how the circles could overlap. Most of the right’s management we are using today always starts out with a well defined root and hierarchical structure under the root.  I believe we need circles of rights, not hierarchies. I say this having worked both in the enterprise environment, social networks and for cross-organizational solutions. Bull’s eye is composed of concentric circles, exemplified by True friends within acquaintances/buddies/friends. This is similar to the traditional hierarchies in LDAP servers, who in practice limit us in what is easily done. Even for other services we tend to limit ourselves to this way of thinking, for example are there very few customer relation clouds that let you assign a person to two different organizations. Relations are normally with a person, not with a graph. I need persons assigned to multiple organizations because so many of my customers have more than one job or are in the process of fusion/fission for their organizations.

Child play is what Google+ circles look right now: disjunct circles you can skip around in. There is currently not much more than twitter lists or Facebook lists in the functionality. So why do I bother to spend time thinking about the potential? Because something needs to be done with the user interfaces for sharing information, and the Circles is a new kid on the block.

Some of the functionality I like about circles

  • Visual guide for who is in what circle
  • Drag and drop interface, still needs quite some work before escaping beta
  • Ability to put people in multiple circles
I think Google should not aim for the bull’s eye, but rather aim for something usable in everyday life, something more like child’s play.

Do not disturb my circles

Are we ready to take up the challenge of using flat space for rights management? It depends on the user interface, and the way circles are implemented today are several steps away from what we need

  • Visualization of circles overlap: Venn diagrams
  • Ability to weed out persons/circles (everybody but my cousin will get the funny pics, I want to closely follow my close friends but not the chatty girl posting too many updates)
  • Sorting the list of circles, and adapting the sort to usage patterns
  • Importing (and searching) from a variety of circles: people who get the same email, lists from other sources, people who live in my area, teams, my co-workers etc
  • Automatic updates, reflected in the search facilities
  • Scaling, for those with more than 15 people in their lives
And all of this needs to happen without having to think too hard about how to do the right thing for me as an end user. Otherwise I’ll just not bother. Google has great intelligence for search, they need to apply that same thinking to who-gets-what in the social networks.

Forget bull’s eye, give us child’s play

If a child can play with the circles and get rights management right, then the solution is good enough. Forget about building the perfect hierarchy with the single root, and get the flow going!

Provisioning is one of the thorny issues plaguing us, and where there are no good standardized solutions. SCIM is a proposal for  Simple Cloud Identity Management, with the intent to “reduce the cost and complexity of user management operations by providing a common user schema and extension model, as well as binding documents to provide patterns for exchanging this schema using standard protocols.”

Internet2 has gathered a wiki of SCIM resources, to help higher education follow the development.  Some of the advantages of the SCIM proposal seem to be

  • REST-support
  • standardized API for cloud-ish functions
  • claims to be simpler, which it really needs to be, but I want to see this IRL before I believe it

The main problem is that installing a new interface on core components (local LDAP-servers, identity management solutions) who are crucial for the day-to-day operations of the organizations involved is not an easy undertaking.  The lead time for serious changes to that part of the infrastructure is at least two years, in my experience, even for small changes like updating schema across multiple organizations.

Next Page »