<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
   <title>Virtual Identity Dialogue</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/" />
   <link rel="self" type="application/atom+xml" href="http://blogs.oracle.com/mwilcox/xml/rss.xml" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68</id>
   <updated>2008-10-09T23:45:35Z</updated>
   
   <generator uri="http://www.sixapart.com/movabletype/">Movable Type Enterprise 1.52-en-voltron-r47459-20070213</generator>

<entry>
   <title>How Oracle Can Help You Write More Secure Code</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/10/how_oracle_can_help_you_write.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.8020</id>
   
   <published>2008-10-09T23:37:55Z</published>
   <updated>2008-10-09T23:45:35Z</updated>
   
   <summary><![CDATA[Now when James McGovern repeats his question of &quot;when will Oracle show how to write secure code&quot; we can point him to this post :). First - make sure to read and check-back with Oracle Secure Technology Center.This is basically...]]></summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   <category term="ovd" label="OVD" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="securecode" label="SecureCode" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>Now when James McGovern repeats his question of &quot;when will Oracle show how to write secure code&quot; we can point him to this post :).</p>  <p>First - make sure to read and check-back with <a href="http://www.oracle.com/technology/deploy/security/index.html">Oracle Secure Technology Center</a>.This is basically one-stop place for all of our security information. Oracle covers everything from OS to applications. And this location covers that breadth with links to deeper-dives.</p>  <p>Second - our Chief Security Officer Mary Ann Davidson has been trying to get developer education ecosystem (e.g. CS programs and their cousins) to do a better job of teaching secure coding. I believe she articulated the problem very well in her post - <a href="http://blogs.oracle.com/maryanndavidson/2008/04/the_supply_chain_problem.html">&quot;The Supply Chain Problem&quot;</a>. </p>  <p>Third - read this book (Mary Ann Davidson recommends it in her Supply Chain Problem) - <a href="http://www.amazon.com/gp/product/1590597842?ie=UTF8&amp;tag=learnsecurity-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=1590597842">Foundations of Security: What Every Programmer Needs to Know</a>. </p>  <p>Fourth - if you do anything with the database- David Knox's <a href="http://www.amazon.com/Effective-Oracle-Database-Security-Design/dp/0072231300/ref=pd_bbs_3?ie=UTF8&amp;s=books&amp;qid=1223595311&amp;sr=8-3">Effective Oracle Database 10g Security by Design</a> is still the go-to resource. It's book #2 on my tech shelf- after my <a href="http://www.amazon.com/Implementing-LDAP-Mark-Wilcox/dp/1861002211/ref=sr_1_2?ie=UTF8&amp;s=books&amp;qid=1223595345&amp;sr=8-2">own</a> (me being first is mostly a vanity thing :)). </p>  <p>As an addendum - if you are writing code in ADF you should check out the new tutorial based on the new demo application - <a href="http://download.oracle.com/docs/cd/E12839_01/web.1111/b31974/toc.htm">&quot;Fusion Order Demo&quot;</a> . Besides learning all of the cool things ADF/JDev bring to the table - <a href="http://download.oracle.com/docs/cd/E12839_01/web.1111/b31974/adding_security.htm#BGBGJEAH">Chapter 28</a> covers how to leverage the external security framework. I hope to be able to use this application to demonstrate more of our capabilities - in particular OVD/IGF but possibly others too.&#160; </p>]]>
      
   </content>
</entry>
<entry>
   <title>Correction on Information Card Foundation</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/10/correction_on_information_card.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.8012</id>
   
   <published>2008-10-09T14:46:17Z</published>
   <updated>2008-10-09T14:46:39Z</updated>
   
   <summary>Charles Andres from the Information Card Foundation posted a comment to correct my earlier post that Microsoft created the Information Card Foundation: One small correction: Microsoft did not start the Information Card Foundation.&amp;#160; A community of architects and designers including...</summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>Charles Andres from the Information Card Foundation posted a comment to correct my earlier post that Microsoft created the Information Card Foundation:</p>  <p><em>One small correction: Microsoft did not start the Information Card     <br />Foundation.&#160; A community of architects and designers including the creators      <br />of the Higgins Project&#160;&#160;&#160; created the organization before inviting any      <br />corporations to join. The consensus of this community was that the visual      <br />metaphor of a digital wallet and cards shared by&#160; The Higgins Project      <br />(which included open source components contributed by engineers from      <br />Parity, Novell, Oracle, and IBM) Microsoft CardSpace, and other      <br />researchers, is the best way to present controls for identity and personal      <br />information to the widest possible user base.&#160;&#160;&#160; The merger of these efforts      <br />along with other components that can benefit from standards protocols&#160; now      <br />underway at OASIS,&#160; makes ICF a common effort by many forward-thinking      <br />companies who want to make the Internet a safer and simpler environment for      <br />all transactions.&#160; The decision by&#160; Microsoft to join the ICF was a great      <br />step for the industry to advance toward&#160; a common unified way for users to      <br />wield trusted verified claims. </em></p>  <p>Since comments don't usually get read - I wanted to make sure this correction was read.</p>]]>
      
   </content>
</entry>
<entry>
   <title>Writing Secure Code - Links - October 10, 2008</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/10/writing_secure_code_links_octo_1.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.8008</id>
   
   <published>2008-10-09T12:32:49Z</published>
   <updated>2008-10-09T12:59:00Z</updated>
   
   <summary><![CDATA[Posting early since I'm taking Friday off. Crisis Begets accountability and transparency --&#160; While not directly about software code it is an article that can be used as a &quot;teachable moment&quot; across many disciplines.&#160; From a programming perspective, the lesson...]]></summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   <category term="ovd" label="OVD" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="securecode" label="SecureCode" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>Posting early since I'm taking Friday off.</p>  <p><a href="http://www.scrippsnews.com/node/36878">Crisis Begets accountability and transparency</a> --&#160; While not directly about software code it is an article that can be used as a &quot;teachable moment&quot; across many disciplines.&#160; From a programming perspective, the lesson to be learned here is that accountability and transparency helps to make for a more secure environment. Additionally we will likely see more monitoring across different systems and changing of organizational structures. Thus we're going to need more code in more places that interoperate with each other to help security become a cohesive whole. Thus make sure you are taking steps to integrate secure auditing (such as Oracle Audit Vault), logging and of course enabling external fine grain access control leveraging standards like XACML. </p>  <p><a href="http://www.informationweek.com/news/security/app_security/showArticle.jhtml?articleID=210800217">ISC2 To Offer Certification For Software Lifecycle Security</a> -- The organization that provides CISSP certification is launching a new certification for developers. It is a rather explicit industry acknowledgement that developer's are not taught security as a core competency. And thus it's not ingrained into training or expectations. It also (IMHO) acknowledges that CISSP is not about dealing with code-level security. They are two different types of disciplines and just because one is competent in one discipline does not necessarily mean you will be competent in another even though they maybe related. </p>  <p><a href="http://www.computerworld.com.au/index.php/id;948751845">Upcoming PHP 5.3 beefs up security</a> -- If you are writing code in PHP - you will want to learn more about a couple of changes being made that likely will make your code more secure but may break some of your scripts.</p>]]>
      
   </content>
</entry>
<entry>
   <title>Two Cookies Can Make You Fat But They Are Not Two-Factor Authentication</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/10/two_cookies_can_make_you_fat_b.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.8000</id>
   
   <published>2008-10-08T21:45:07Z</published>
   <updated>2008-10-08T22:00:07Z</updated>
   
   <summary>This post is inspired by a conversation I had with one of our customers. They&amp;#160; have a team responsible for customer facing revenue applications and of course that team is trying to make sure they have strong security. On the...</summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   <category term="oaam" label="OAAM" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="ovd" label="OVD" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>This post is inspired by a conversation I had with one of our customers. They&#160; have a team responsible for customer facing revenue applications and of course that team is trying to make sure they have strong security.</p>  <p>On the good news side - the team knows they need &quot;two-factor&quot; authentication. A factor is normally based on the concept of something you know (aka a password or answer to a security question) or something you have (digital certificate, fingerprint). </p>  <p>However, apparently it's the cool thing to do for certain web-sites to have &quot;dual-cookies&quot;. One is persistent to store simple profile information (like what page do you want to go to when you login) - nothing secure. The other is your session cookie. And the perception in this team (and maybe they learned it from some magazine/conference) is that this is a type of two-factor authentication. And in particular they thought this would help protect access from &quot;new unknown machines&quot;.</p>  <p>Any security professional knows this is not the case. Session cookies are often used to enable Web-based SSO. The persistent cookie is really just used to help manage profile information that can't be stored elsewhere. And just because there are two-cookies it does not make it two-factor authentication. </p>  <p>However, the better way to solve this problem isn't two cookies. It's to use actual multi-factor authentication and knowledge-based authorization. And Oracle can provide this via Oracle Adaptive Access Manager (OAAM).</p>  <p>Here is how OAAM could help in this scenario as quoted by one of our PM's in the Access Management Suite team:</p>  <p><em>OAAM uses many contextual information to determine the risk factor of any users performing any an action, whether it be viewing a resource or performing an action or or initiating a transaction.&#160; The contextual information covers things like IP address, geo-location, time of day, day of week, device fingerprinting (which can be done as a persistent object on the client machine), and even user behavior.</em></p>  <p><em>If I drill down on the use case a little bit, I believe you guys are looking for a way to raise risk factors when a user is coming in from a machine that the user has never used.&#160; The raised risk factor will require the user to answer an additional challenge question before the system can trust them enough to allow access to some resource. </em></p>  <p><em></em>    <br /><em>So how does OAM and OAAM help accomplish the above?&#160; One example would be as follows:</em></p>  <p>   <br /><em>The first time a user attempts access to a protected resource, OAM initiates an authentication scheme that really calls OAAM in the backend.&#160; OAAM then determines if the device has ever been used before based on device fingerprinting and if the machine is never used, then username, password, and a knowledge based question must all be provided before the user gets access.&#160; Subsequently, the user attempts access again with the persistent object (or device fingerprint) that OAAM accepts, then only username and password is necessary.&#160; This provides the knowledge based question as an added security measure if the user is coming from a machine that is never seen before.&#160; Of course, this solution assumes that the knowledge based questions and answers has already been set up for all users.&#160; </em></p>  <p>I also pitched a couple of other options - in particular if OAAM adoption would be slow to update for budget or time constraints:</p>  <p>1 - On sensitive pages - simply prompt for the password again. This would at least help with preventing someone who got access because the original person left the room.</p>  <p>2 - On sensitive pages - not only ask for a password but perhaps require a different pin code for that page.</p>  <p>3 - You could also use other authentication types&#160; -like digital certificates but that has its own set of headaches.</p>  <p>Also you can read more about <a href="http://www.oracle.com/technology/products/id_mgmt/oaam/index.html">OAAM</a>.</p>]]>
      
   </content>
</entry>
<entry>
   <title>More James McGovern Q and A</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/10/more_james_mcgovern_q_and_a.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.7988</id>
   
   <published>2008-10-08T13:08:41Z</published>
   <updated>2008-10-08T13:20:56Z</updated>
   
   <summary>James was nice enough to ask more questions -&amp;#160; though I&apos;m still curious as to how he thinks we specifically trail Microsoft in open-source contributions. So here for the enjoyment of the readers is my response: Maybe you could share...</summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   <category term="igf" label="IGF" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="ovd" label="OVD" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="opensource" label="OpenSource" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>James was nice enough to ask more questions -&#160; though I'm still curious as to how he thinks we specifically trail Microsoft in open-source contributions.</p>  <p>So here for the enjoyment of the readers is my response:</p>  <p><em>Maybe you could share on your next posting exactly how allowing closed source Oracle databases on the Amazon grid is open source?</em> </p>  <p>[MEW]&#160; I realize I should have clarified that point better. What I meant by this is that if you are a developer who needs to test your code against Oracle DB - there is not much easier way than using one of the pre-built EC2 images. Assuming you meet OTN requirements - you are probably only paying for EC2 fees. Which is still likely cheaper than having your own servers. I would think as an &quot;enterprise architect&quot; you would understand the value of this approach over having your developers having to become experts at installing Oracle database. And while sure you could have DBA's do that - it's still probably quicker/more flexible to do this (in particular for any research type work, or training on a new language/framework) than internally. </p>  <p><em>Likewise, there is a difference between open source and open specifications. Are you willing to say that all reference code will be of production quality?</em> </p>  <p>[MEW] I don't know what you mean by production quality. I don't mean that to be sarcastically but rather a reflection that it is a relatively subjective question. What I can say is that code that we do contribute to OpenLiberty from our dev team will have gone through at least our base level software development process which includes design review, code review and automated regression tests. This is not to say that any identity attribute service on OpenLiberty will be 100% the same as Oracle's production version. Because we will be adding functionality to make it an actual product (such as UI and integration with Oracle audit/logging framework for example) that will not be part of the Project Liberty. But OpenLiberty is well, um, open - so you can participate as well.</p>  <p><em>Sun has open sourced LDAP. Would you as a product manager advocate the&#160; same for virtual directories?</em> </p>  <p>[MEW] Let's take a step back here. Sun did not open-source LDAP :). They have an open-source project that wrote from scratch an open-source ,storage-based LDAP server in Java. It's not the first open-source LDAP (UMichigan &amp; OpenLDAP have that claim), nor the first open-source Java LDAP (even Apache isn't the first, but it's the longest-running) and heck even their C-based version was effectively open-source via the Fedora Directory Project. I am not sure why anyone at Sun thought starting from scratch was a good idea.&#160; At the moment we are still able to grow the adoption of OVD (and OID), are able to improve upon the core product via customer feedback and have a plug-in API that allows for customers (whether themselves, partners or Oracle consulting) to extend the product to meet their needs - so I don't sense a valid reason to open-source OVD. I obviously cannot speak for any other virtual directory vendor/project. </p>  <p><em>OK, Kim Cameron of MS paid for implementations of Cardspace on other platforms in which MS is simply attempting to improve the ecosystem and won't make a cent off it. In many ways it actually competes with its own offerings. What is the Oracle equivalent?</em></p>  <p>[MEW] Microsoft has produced open specifications, a few examples and started the <a href="http://informationcard.net/">Information Card Foundation</a> (which we are a member of) to help drive adoption of Information Cards.&#160; I would argue we are on the same path on IGF via Open Liberty.&#160; Except that since our work is done via Project Liberty we can avoid the need to create yet another foundation. The biggest difference is that since IGF is more middleware based, the visible bits have been slower to show though that is starting to change as you can see from Phil Hunt's (our lead technical person for IGF standard) <a href="http://www.oracle.com/technology/tech/standards/idm/igf/pdf/applyingigf.pdf">DIDW presentation</a>. And as mentioned in that presentation - we are releasing the IGF Attribute Service API as open-source (this is new code). The API will have at least 2 provider implementations - one using OVD (which I'm responsible for and is planned to be a core component of Fusion Middleware &amp; Fusion Applications) and one based on Project Higgins. This is an open project - so you are welcome to go learn <a href="http://www.openliberty.org/">more</a>. </p>]]>
      
   </content>
</entry>
<entry>
   <title>Virtual Directory Litmus Test</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/10/virtual_directory_litmus_test.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.7945</id>
   
   <published>2008-10-06T14:30:34Z</published>
   <updated>2008-10-06T14:33:36Z</updated>
   
   <summary>Matt Flynn posted a paraphrased quote from Divya Sundaram of Motorola: If you front-end data (or a data store) that you don&apos;t own (or don&apos;t have control of), then you need to replicate/sync data (instead of virtualizing the view). And...</summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   <category term="ovd" label="OVD" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>Matt Flynn <a href="http://360tek.blogspot.com/2008/10/litmus-test-for-metadirectory-vs.html">posted</a> a paraphrased quote from Divya Sundaram of Motorola:</p>  <p><em>If you front-end data (or a data store) that you don't own (or don't have control of), then you need to replicate/sync data (instead of virtualizing the view).</em></p>  <p>And then asked if this is a litmus test for Meta vs Virtual. </p>  <p>My answer is that it depends.</p>  <p>This is because Sundaram's statement is a false assumption though it's a common belief. </p>  <p>It's a common belief because people want to be &quot;in-control&quot; of data and feel that unless they control everything, they are not truly in control. </p>  <p>This of course is patently false - we have mechanisms (such as contracts) to deal with boundary control issues without needing to actually directly control everything</p>  <p>And this is reflected in the fact that many (if not most) virtual directory deployments - the team that runs the virtual directory does NOT own the data sources they are connecting to. They systems they connect to are often run by different teams usually with different management chains. But virtualization works because those systems are already designed to be used by external client applications with proper level of Service Level Agreements &amp; availability. </p>  <p>And virtualization is a way to make the most out of these <strong>existing</strong> capabilities. </p>  <p>Where &quot;meta-directory&quot; makes the most sense is really two cases:</p>  <p>1 - You want to reduce the number of storage systems in particular different LDAP servers. Thus you could collapse many ADAM, Sun, Novell, openLDAP, etc into a single enterprise-class storage system such as Oracle Internet Directory.</p>  <p>2 - You need a standardized, provisioning system to meet business process &amp; compliance requirements. This is the environment which Oracle Identity Manager fills. </p>]]>
      
   </content>
</entry>
<entry>
   <title>Reply to James if he was US CIO</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/10/reply_to_james_if_he_was_us_ci.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.7930</id>
   
   <published>2008-10-03T16:16:07Z</published>
   <updated>2008-10-03T16:16:24Z</updated>
   
   <summary>James is on another rant. He has asked me to reply to a couple of other posts on LDAP topics, but I wanted to get clarity on one of his points. 9. I would use the same law and force...</summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>James is on another <a href="http://duckdown.blogspot.com/2008/10/what-if-i-became-cio-of-federal.html">rant</a>. He has asked me to reply to a couple of other posts on LDAP topics, but I wanted to get clarity on one of his points. </p>  <p><em>9. I would use the same law and force Larry Ellison to make Oracle contribute more to open source.</em>&#160;</p>  <p>First - why single out Ellison and Oracle? Does he feel others like Microsoft or IBM or CA have done enough? And if so - what have they done for comparison.</p>  <p>Second - I would like to point our Oracle's contributions to Open Source. Most people are probably not familiar to the work we have done.</p>  <p>Start with our <a href="http://oss.oracle.com/">Open Source Site</a>.</p>  <p>But just to give a summary:</p>  <p>1 - Oracle contributes heavily to Linux to help the database in particular work better. This is why we were able to offer Oracle Enterprise Linux.</p>  <p>2 - We have put significant effort - in terms of drivers and related work to various projects including PHP, Ruby, Spring and of course EclipseLink (aka open-source of Toplink)</p>  <p>3 - We effectively donated our entire next-generation UI library (ADF) to Apache to help provider a richer platform for Web applications. </p>  <p>4 - We doing all of the reference work for IGF in the open at <a href="http://openliberty.org/">openLiberty</a>. </p>  <p>5 - It's now possible to run Oracle software on Amazon EC2. This is particular useful when it comes to the database - you can now have a full EE database instance running in 5 minutes without having to fiddle with any kernel or related parameters. </p>  <p>So James -what specifically do you want Oracle to do more of? And what would be the value for you to do so?&#160; If you have specific items I'm happy to hear them &amp; communicate them to the appropriate people.</p>]]>
      
   </content>
</entry>
<entry>
   <title>Writing Secure Code - Links - October 3, 2008</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/10/writing_secure_code_links_octo.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.7925</id>
   
   <published>2008-10-03T11:47:19Z</published>
   <updated>2008-10-04T02:52:36Z</updated>
   
   <summary>5 Password Utilities That Will Make Your Life Simpler -- Not really any coding tips but since passwords will be with us for a long time - these might be helpful for you and your users. Interesting they mentioned OpenID...</summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   <category term="ovd" label="OVD" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="securecode" label="SecureCode" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p><a href="http://application-programming.businessexponents.com/?p=37">5 Password Utilities That Will Make Your Life Simpler</a> -- Not really any coding tips but since passwords will be with us for a long time - these might be helpful for you and your users. Interesting they mentioned OpenID as one of the utilities but not InfoCards. </p>  <p><a href="http://www.petefinnigan.com/tools.htm">Pete Finnigan - Oracle [database] security information</a> -- A page with various utilities to help test your local Oracle password security and tools to help with auditing the database.</p>]]>
      
   </content>
</entry>
<entry>
   <title>Update on Mapping User in Enterprise User Security (Central Database Account Administration)</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/10/update_on_mapping_user_in_ente.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.7894</id>
   
   <published>2008-10-01T13:04:18Z</published>
   <updated>2008-10-01T13:05:57Z</updated>
   
   <summary>When you map a user in Enterprise User Security (EUS) - I found that you can indeed avoid mapping the user in Enterprise Security Manager (ESM) if you provide the complete syntax when creating/altering the user. So for example: alter...</summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   <category term="eus" label="EUS" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="ovd" label="OVD" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>When you map a user in Enterprise User Security (EUS) - I found that you can indeed avoid mapping the user in Enterprise Security Manager (ESM) if you provide the complete syntax when creating/altering the user.</p>  <p>So for example:</p>  <p>alter user hr identified globally as 'cn=Mark Wilcox,cn=Users,dc=ovddemo,dc=com';</p>  <p>Should allow you to then login as Mark Wilcox using his uid value (e.g. mwilcox). </p>  <p>I'm sure I read that in Knox's book before but it didn't sink in until I was asked about this at OOW last week. </p>]]>
      
   </content>
</entry>
<entry>
   <title>Writing Secure Code - Links - September 26, 2008</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/09/writing_secure_code_links_sept_1.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.7861</id>
   
   <published>2008-09-29T22:52:03Z</published>
   <updated>2008-09-29T22:56:47Z</updated>
   
   <summary><![CDATA[Apologies for this being late. Because of OOW I got a bit behind. Passwords -- This blog post from the &quot;Blown to Bits&quot; blog talks about problems with passwords. On a personal level - you should have a random password....]]></summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   <category term="ovd" label="OVD" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="securecode" label="SecureCode" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>Apologies for this being late. Because of OOW I got a bit behind.</p>  <p><a href="http://www.bitsbook.com/2008/09/passwords/">Passwords</a> -- This blog post from the &quot;Blown to Bits&quot; blog talks about problems with passwords. On a personal level - you should have a random password. No words. Just mix of characters. From a developer perspective - do <strong>not</strong> write your own login code. Almost all frameworks now have their own login subsystem - leverage that. It will allow you to focus on code that is actually core to your business application. Or as I would think - I would not want my friend Quan writing my UI but he knows how to write awesome security code. I know my friend Josh knows how to make awesome looking UI - he shouldn't be writing my security code. And from an enterprise level - make sure you are adopting&#160; comprehensive access products such as Oracle Access Manager suite.</p>  <p><a href="http://www.majeinteractive.com/articles.html">&quot;Using Yahoo! Login Mechanisms for Desktop Applications&quot;</a> -- If you want to use Yahoo! for user password management this might be useful to you. </p>  <p><a href="http://www.chron.com/disp/story.mpl/ap/tx/5996169.html">Criminal probe of ex-Lottery employee Launched</a>&#160; -- Basically another data leak problem. Remember - when writing apps to make sure you allow for proper auditing. Also make sure to put in hooks that can allow for access controls to be written using a standard like XACML (such as provided by Oracle Entitlement Server). And if you are storing data in a database make sure the application can work with strong security measures like Oracle Database Vault and Transparent Data Encryption. And - if you managing/installing database - make sure you enable these features if your applications can support them.</p>  <p><a href="http://www.schneier.com/book-sos.html">Schneier On Security</a> -- Bruce Scheier who is the expert on security - has released a new book. I believe it's a collection of his columns, so if you are a regular reader probably nothing new. However, if you are new to this field - you should get a copy. As well as his previous book Beyond Fear. Or if you are up to speed on these books - then be sure to read <a href="http://www.amazon.com/Unthinkable-Survives-When-Disaster-Strikes/dp/0307352897/ref=pd_bbs_sr_1?ie=UTF8&amp;s=books&amp;qid=1221764290&amp;sr=8-1">The Unthinkable: Who Survives When Disaster Strikes - and Why</a>. </p>]]>
      
   </content>
</entry>
<entry>
   <title>Oracle Directory Services Story Now Live</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/09/oracle_directory_services_stor.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.6426</id>
   
   <published>2008-09-12T22:18:18Z</published>
   <updated>2008-09-12T22:33:23Z</updated>
   
   <summary>As I hinted out earlier - we have a new blog dedicated to business level discussion on directories. It&apos;s called Directory Service Stories and we have posted our first post on a customer related story. The purpose of that blog...</summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   <category term="customerstories" label="CustomerStories" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>As I hinted out earlier - we have a new blog dedicated to business level discussion on directories. It's called Directory Service Stories and we have posted our first <a href="http://blogs.oracle.com/odsstories/">post</a> on a customer related story. </p> <p>The purpose of that blog in compared to mine is that we will focus on customer stories and higher level use cases. While i continue to be more technical here. </p>]]>
      
   </content>
</entry>
<entry>
   <title>Writing Secure Code - Links - September 12, 2008</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/09/writing_secure_code_links_sept.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.6424</id>
   
   <published>2008-09-12T22:01:16Z</published>
   <updated>2008-09-12T22:08:16Z</updated>
   
   <summary><![CDATA[Since I'm focusing this blog more on the technical side - I thought I would try to regularly provide a set of links and commentary to security and privacy articles I find.&nbsp; &nbsp; "For Your Browser Only" -- Reminds developer's...]]></summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   <category term="ovd" label="OVD" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="securecode" label="SecureCode" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>Since I'm focusing this blog more on the technical side - I thought I would try to regularly provide a set of links and commentary to security and privacy articles I find.&nbsp; </p> <p>&nbsp;</p> <p><a href="http://idlogger.wordpress.com/2008/09/04/for-your-browser-only/">"For Your Browser Only"</a> -- Reminds developer's that if you are writing cookies from your server code to remember to mark them "HTTP Only". This dramatically reduces the surface area for cross-site scripting attacks. I would also add that other techniques - such as using a standards-based framework for authentication/session management and risk-based access control like Oracle provides via Fusion Middleware and the Access Management Suite will add extra protection.</p> <p><a href="http://www.adtmag.com/article.aspx?id=23187">Security Researches Uncover Spring Framework Vulnerabilities</a>&nbsp; --&nbsp; Some researchers have found vulnerabilities in the popular Spring framework. </p> <p><a href="http://papers.ssrn.com/sol3/papers.cfm?abstract_id=1262130">What Californians Understand About Privacy Online</a> -- A paper showing how big the gulf is between the average person's perception of how their privacy is protected and the reality . One could of course make a joke about what do you expect from people who elect "The Terminator" their governor&nbsp; but it is a real problem. </p> <h4><a href="http://www.rorsecurity.info/2008/09/08/sql-injection-issue-in-limit-and-offset-parameter/">SQL Injection issue in :limit and :offset parameter</a> -- A two-fer this week - security issues in two of the most popular frameworks out there - Spring and now Rails. I give credit to the author for trying to help raise awareness and in general I think adopting frameworks (in particular standard - whether that's "Standard" like JSF or a "standard" like Spring/Rails) make you more productive - and yes, secure.</h4> <p><a href="http://davidwalsh.name/5-features-login-system">5 Features Your Login System Must Have</a> -- An interesting article for those who are still "rolling their own system". Of course for an enterprise - I'm not sure of any valid use case where that would be a good idea - there's too many good products out there such as Oracle Access Management Suite that can do this for you without needing to become a SSO developer. If you are working on a consumer site - then at the very least, you should adopt something like OpenID or Infocards so that you are not managing passwords. </p>]]>
      
   </content>
</entry>
<entry>
   <title>Even More Presentations on Oracle Directory Services at OOW 2008</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/09/even_more_presentations_on_ora.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.6399</id>
   
   <published>2008-09-11T13:40:24Z</published>
   <updated>2008-09-11T13:47:56Z</updated>
   
   <summary><![CDATA[Here is the complete list that I know of that will cover Oracle Directory Services (OVD, OID) at OOW 2008.&nbsp; I am expecting to present at the first three events. I hope to make the last one, but I'm planning...]]></summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   <category term="ovd" label="OVD" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="openworld" label="OpenWorld" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>Here is the complete list that I know of that will cover Oracle Directory Services (OVD, OID) at OOW 2008.&nbsp; I am expecting to present at the first three events. I hope to make the last one, but I'm planning on presenting at the Unconference on Thursday so might be tight. I will also be at the Oracle Directory Service's booth when I'm not presenting. </p> <table cellspacing="0" cellpadding="2" width="483" border="0"> <tbody> <tr> <td valign="top" width="73"><strong>Session ID</strong></td> <td valign="top" width="115"><strong>Title</strong></td> <td valign="top" width="84"><strong>Date</strong></td> <td valign="top" width="59"><strong>Time</strong></td> <td valign="top" width="150">Room</td></tr> <tr> <td valign="top" width="72">S298531 <br></td> <td valign="top" width="115"> <p>Three Things You Should Know About Managing Your Identity<br>Management Suite With Oracle Enterprise Manager</p></td> <td valign="top" width="85">Monday</td> <td valign="top" width="59">14:30 - 15:30</td> <td valign="top" width="150"> <p>Moscone West Rm 2003</p></td></tr> <tr> <td valign="top" width="71">S298811</td> <td valign="top" width="115"> <p>Active Directory and Windows Security Integration with Oracle<br>Database </p></td> <td valign="top" width="86">Tuesday</td> <td valign="top" width="59">17:00 - 18:00</td> <td valign="top" width="150">Moscone South Rm 305</td></tr> <tr> <td valign="top" width="72">S298925 </td> <td valign="top" width="114">Using Oracle Virtual Directory to Integrate Microsoft Active Directory, Oracle Database, and Oracle Applications </td> <td valign="top" width="86">Wednesday</td> <td valign="top" width="59">13:00-14:00</td> <td valign="top" width="150">Marriott Golden Gate C3 </td></tr> <tr> <td valign="top" width="72">S300044</td> <td valign="top" width="115"> <p>Integrating Microsoft Active Directory and Oracle Internet<br>Directory with Database Logins: Enterprise User Security (IOUG)</p></td> <td valign="top" width="87">Thursday</td> <td valign="top" width="61">12:00 - 13:00</td> <td valign="top" width="150"> <p>Marriott Nob Hill CD</p></td></tr></tbody></table>]]>
      
   </content>
</entry>
<entry>
   <title>Ugh - More Blog Drama</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/09/ugh_more_blog_drama.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.6153</id>
   
   <published>2008-09-03T00:31:38Z</published>
   <updated>2008-09-03T00:32:07Z</updated>
   
   <summary>Today I wanted to do good and plug our first posted OVD customer case study and highlight our new directory services blog. But just after I finally figured out how to get my posts properly posted - I got word,...</summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>Today I wanted to do good and plug our first posted OVD customer case study and highlight our new directory services blog. But just after I finally figured out how to get my posts properly posted - I got word, we had to pull the posts. It's nothing major - just that we have some central location that hosts them and then we can publicly link them.</p> <p>As I used to say to my "How to build web page" students when I taught - "The only difference between a novice and a guru is the number of people who know when you screw up".</p> <p>Sorry for any confusion if you followed the earlier links.</p>]]>
      
   </content>
</entry>
<entry>
   <title>Clarifying EUS and Kerberos</title>
   <link rel="alternate" type="text/html" href="http://blogs.oracle.com/mwilcox/2008/09/clarifying_eus_and_kerberos.html" />
   <id>tag:blogs.oracle.com,2008:/mwilcox//68.6151</id>
   
   <published>2008-09-02T22:26:27Z</published>
   <updated>2008-09-02T22:31:41Z</updated>
   
   <summary><![CDATA[One of our sales consultants had some questions on OVD, Enterprise User Security (EUS) and Kerberos. Remember EUS is the Oracle Database feature that lets you centralize the management of user &amp; roles to your enterprise directory.&nbsp; The database supports...]]></summary>
   <author>
      <name>mark.wilcox</name>
      
   </author>
   
   <category term="eus" label="EUS" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="kerberos" label="Kerberos" scheme="http://www.sixapart.com/ns/types#tag" />
   <category term="ovd" label="OVD" scheme="http://www.sixapart.com/ns/types#tag" />
   
   <content type="html" xml:lang="en" xml:base="http://blogs.oracle.com/mwilcox/">
      <![CDATA[<p>One of our sales consultants had some questions on OVD, Enterprise User Security (EUS) and Kerberos. Remember EUS is the Oracle Database feature that lets you centralize the management of user &amp; roles to your enterprise directory.&nbsp; </p> <p>The database supports multiple models of authentication. </p> <p>They are:</p> <ul> <li>username and password </li> <li>digital certificates (aka x.509)</li> <li>Kerberos </li> <li>RADIUS</li></ul> <p>The first three are supported by EUS. The last - RADIUS is not.</p> <p>Username and password is the easiest but does mean that in EUS we have to have a MD5 or SHA1 password stored in the enterprise directory. For Active Directory we have a DLL that uses Microsoft's Password Notifier API to do this for us since AD doesn't do this automatically. For Sun (and Fedora though we haven't officially certified it) the standard userpassword attribute is already hashed properly.</p> <p>If you are using Kerberos the upside is that you don't need to exchange passwords. Instead the client gets a ticket from the KDC (these days that's likely to be Microsoft AD though I have run into MIT recently) and then the ticket can be used to validate their credentials against the database (this is a simplification of Kerberos. But if you really want to know more <a href="http://en.wikipedia.org/wiki/Kerberos_(protocol)">you can read the details</a> ). In Kerberos the database verifies the credentials. It only uses EUS to map the user to a database schema and database role.</p> <p>Now to answer some specific questions - which I can update later:</p> <p>Q1 - the LDAP listener is not Kerberos ( authentication ) enabled? <p>A1 - Correct, OVD currently does not support Kerberos authentication. This is not generally a limitation since no common LDAP client application that I'm aware of requires Kerberos authentication. Also Kerberos protocol does not easily open itself up to virtualization. Perhaps this will change when the world starts to adopt STS technologies. <p>Q2 - the LDAP adapter act as a client and is Kerberos enabled? <p>A2 - Yes, OVD can take a simple bind (e.g. username and password) from an LDAP client application and verify that password against Active Directory using Kerberos. This is useful if a company doesn't have SSL enabled on AD (but has SSL on OVD) and wants to securely validate passswords against AD. <p>Q3 - I can't use my Kerberos ticket ( obtained while login in to a windows domain ) to authenticate to OVD and do a query" ? <p>A3 - This depends because LDAP is like database - most of the time end-users are not connecting directly to the system - they use client applications. If the client application is web-based and configured to do Windows SSO - then yes. If it's a 3rd party application that cannot, then you will need to re-type your credentials. Even if we could accept Kerberos tokens - OVD (just as ANY other Kerberos enabled application) is dependent upon the client application to support it as well. This is why Kerberos never took off in great numbers prior to the release of Active Directory (which gave everyone who ran Windows a KDC whether they wanted it or not) and the Web.</p>]]>
      
   </content>
</entry>

</feed>
