diff -r 8db559aeff4d -r 8b5e50e4968e ldapint/andldapbld.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ldapint/andldapbld.txt Fri Jan 13 19:15:33 2012 +0100 @@ -0,0 +1,177 @@ +LDAP integration in Android +Type: Lecture/presentation +Category: Engineering/development +Topic: Networking/Internals/Implementation choices +Audience: Mobile users, + software engineers, + network engineers +Duration: 45 minute presentation + +Author and Speaker +------------------ +Michael Schloh von Bennewitz +Software Engineer, Europalab Networks +web: http://michael.schloh.com/ +email: michael@schloh.com +isdn: +49(89)44239885 +voip: sips:michael@schloh.com +xmpp: MSvB + +Biography +--------- +Michael Schloh von Bennewitz is a computer scientist specializing in +network software, mobile computing, and client server design. He speaks +at technical events every year. In the past, he has given lectures on +object oriented design, technical writing, network protocols, mobile +OSs, MeeGo development, LDAP integration strategies, and the Qt library +build process. His speaking style is humorous, using gestures and good +eye contact. He walks about the room and writes presentations in SVG +or HTML5. + +Abstract +-------- +The lightweight directory access protocol (LDAP) is implemented in +almost all IP hardphones as well as being prevelent in email clients. +Although Active Directory users of Windows technology typically use LDAP +for authentication, a number of directory relevant use cases lead to the +question 'Why do so few mobile operating systems integrate LDAP client +logic?' + +The presentation begins by defining and explaining the LDAP protocol. +Reference is made to some well known client and server implementations +as well as reviewing a hello world example application in ten minutes. +A comparison is drawn to SQL, a similar technology which most have more +experience with. Use cases are explored and judged for their value to +the linux mobile ecosystem and Android OS in particular. + +In past presentations, audiences have put their own use cases +forward and compared LDAP directory concepts with corresponding SQL +alternatives. + +The audience consists of regular android users as well as software +and network engineers familiar with LDAP, SQL, or neither one. +Attendants expect clearly defined LDAP use cases, abstract concepts, +concrete definitions, and a well explained hello world LDAP example +implementation given live. + +It is likely that what attendants take home is not what they thought +about before. Many have little or no exposure to directory services +and will rejoice in learning about LDAP and how easy it is to integrate +and administer. The Linux community stands to benefit greatly from a +reenergized collective effort at integrating LDAP wherever a strong case +for directory service exists. Hello Android, meet LDAP. + +The following text is a lecture outline. + +Main chapters (20 minutes) +-------------------------- + Concepts + Directory + Access + Protocol + LDAP + Offspring + Active directory + Comparisons + SQL + Client storage + + Business use cases + Legacy directories + Network configuration + Security or license sensitive + + General use cases + Authentication + Contacts integration + Noncontacts customized + Certificate storage + SQL competition + + Platform provision + Synchronization + Read-optimized lookups + Little network penalty + Standardized protocol + Network bound + + Platform architecture + What Android API provides + What Android market offers + What 3rd party APIs offer + Compatibility concerns + + Implementations + Server-side relevance + Client SDKs + Apache [1] + OpenDS [2] + UnboundID [3] + Novell [4] + Mozilla [5] + Netscape (renamed Mozilla) + Oracle JNDI [6] (not available) + JavaScript (not much) + +Demonstration (15 minutes) +-------------------------- + Download and installation of LDAP client SDK + Development of Hello LDAP five line application + Build, package, install, and test app + Review of selected business use case + +Questions (10 minutes) +---------------------- + Anticipated questions + Why not just use a (Static|SQL|Lync|other) directory in business? + What are the disadvantages of SQL or ODBC for similar applications? + How relevant are directory services other than just for contacts? + Why would a business not use whatever apps are already in the market? + Why not depend on a social network for directory services? + +Relevant jokes about... +----------------------- + Android and Linux + Directories and legacy apps + +Glossary +-------- + Directory + Access + Protocol + Lightweight Directory Access Protocol (LDAP) + Active Directory (AD) + Application Programming Interface (API) + Software Development Kit (SDK) + Structured Query Language (SQL) + Open Database Connectivity (ODBC) + American National Standards Institute (ANSI) + International Organization for Standards (ISO) + Internet Engineering Task Force (IETF) + Request for Comments (RFC) + +Errata +------ + Errata here. + +Lecture materials +----------------- +This lecture is developed on a public source code revision management +system [7]. It is (or will be) published on a public file server [8]. + +Technical requirements +---------------------- +A WLAN connection (for remote slide advancement,) internet connectivity +(for demonstration purposes,) and a whiteboard (to sketch diagrams) are +needed for this presentation. + +Links and notes +--------------- + [1] http://directory.apache.org/ + [2] http://www.opends.org/ + [3] http://www.unboundid.com/products/ldap-sdk/ + [4] http://www.novell.com/developer/ndk/ldap_classes_for_java.html + [5] https://wiki.mozilla.org/Directory + [6] http://www.oracle.com/technetwork/java/jndi/ + [7] http://scm.europalab.com/lectures/ + [8] ftp://ftp.europalab.com/pub/doc/lect/