Monday, December 24, 2012

SharePoint BDC Oracle Connection to database using username and password

If you want SharePoint BDC connect to Oracle database using explicit username and password:

  1.  Set up an application definition in Secure Store Service with the Oracle credentials.
  2.  Use AuthenticationMode of RdbCredentials.
  3. When you use RdbCredentials as the authentication mode, you cannot use the RdbConnection User ID and RdbConnection Password properties, as these values are supplied by the Secure Store Service.(Lob connection will be as below)
        <LobSystemInstances>
          <LobSystemInstance Name="OracleInstance">
            <Properties>
            <Property Name="AuthenticationMode" Type="System.String">RdbCredentials</Property>
            <Property Name="DatabaseAccessProvider" Type="System.String">Oracle</Property>
            <Property Name="RdbConnection Data Source" Type="System.String">YOUR_ORACLE_NET_SERVICE_NAME_HERE</Property>
            <Property Name="SsoApplicationId" Type="System.String">SECURESTORE_ORACLE_APP_ID_HERE</Property>
            <!-- Client Ship -->
            <Property Name="SsoProviderImplementation"
              Type="System.String">
              Microsoft.Office.BusinessData.Infrastructure.SecureStore.LocalSecureStoreProvider,
              Microsoft.Office.BusinessData, Version=14.0.0.0, Culture=neutral,
              PublicKeyToken=71e9bce111e9429c</Property>
           </Properties>
          </LobSystemInstance>
        </LobSystemInstances> 
  4. If you specify them, they are simply ignored. You must use Secure Store to supply the Oracle credentials.(Lob connection will be as below)
       <LobSystemInstance Name="PassThrough">
              <Properties>
                <Property Name="ShowInSearchUI" Type="System.String"></Property>
                <Property Name="DatabaseAccessProvider" Type="System.String">Odbc</Property>
                <Property Name="AuthenticationMode" Type="System.String">PassThrough</Property>
                <Property Name="RdbConnection Driver" Type="System.String">{Oracle in OraClient11g_home1}</Property>
                <Property Name="RdbConnection dbq" Type="System.String">XE_ORION</Property>
                <Property Name="RdbConnection uid" Type="System.String">hr</Property>
                <Property Name="RdbConnection pwd" Type="System.String">12345</Property>
                <Property Name="RdbConnection Trusted_Connection" Type="System.String">yes</Property>
              </Properties>
            </LobSystemInstance> 

No comments: