Download System Data User: FPDS MRS Remote Access Introduction

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
System Data User:
FPDS MRS Remote Access Introduction
Procurement Business Intelligence Service (PBIS)
OSD, AT&L, DPAP
Version 1.1
12/06/2016
Document Revision: V1.1
Page 1
Contents
Contents........................................................................................................................................................................ 2
Objective / Scope .......................................................................................................................................................... 3
Purpose ......................................................................................................................................................................... 3
Requirements ............................................................................................................................................................... 3

Supply external system’s information to DPAP: ............................................................................................... 3

PBIS System Data Users external system assumptions: ................................................................................... 3
External system configuration setup instructions ........................................................................................................ 3

Connection using JDBC Driver........................................................................................................................... 4

Prerequisites ................................................................................................................................................. 4

Details ........................................................................................................................................................... 4

Example......................................................................................................................................................... 4

Connection using DBLink .................................................................................................................................. 5

Prerequisites ................................................................................................................................................. 5

Details ........................................................................................................................................................... 5
Document Revision: V1.1
Page 2
Objective / Scope
The main objective of this document is to provide technical setup instructions for the
Procurement Business Intelligence Service (PBIS) System Data Users that are interested in
connecting to the Federal Procurement Data System Management Report Server (FPDS MRS).
Purpose
Procurement Action data is available from the Federal Procurement Data System – Next
Generation (FPDS-NG) through their Atom Feed process. Defense Procurement and
Acquisition Policy (DPAP) built an interface from FPDS-NG to PBIS using this Atom Feed
process to consume the data. Making this FPDS-NG data available to other DoD components
alleviates the need for duplicate developmental efforts. The FPDS MRS is designed for the end
user to consume the FPDS-NG data they need and was not intended to be a transactional
information server. FPDS MRS was intentionally designed to be the source to build a data
repository on the System Data User’s external system.
Requirements

Supply System Data User’s external system information to DPAP:
The System Data User will provide DPAP with its forward facing server’s IP address/port
information and currently we can accept a maximum of two IPs, e.g. one for development
and one for production. The hosting facility will make the necessary network
configuration changes to allow connectivity from the external system. Due to the time
necessary to implement these changes this information should be provided as early as
possible. To begin this process please access and fill out accordingly the
System_Data_User_Request_Form_V1_20161031.docx located on the DoD
Procurement Toolbox at http://dodprocurementtoolbox.com/site-pages/system-datausers.
 System Data User’s external system assumptions:
o It will connect via a DBLINK or JDBC Type 4 connection.
o It is an Oracle database if using the DBLINK connectivity.
o It will not treat FPDS MRS as a transactional information server but will treat FPDS
MRS as the source to build a data repository on the System Data User’s external
system.
o It resides outside the ALTESS boundary and is located on the .MIL network.
o It will use the SSL authentication to connect to FPDS MRS instead of native
encryption.
System Data User’s external system configuration setup instructions
The System Data User should receive the following information from DPAP prior to establishing
connection to FPDS MRS:
Document Revision: V1.1
Page 3
o The database username/password on FPDS MRS to connect remotely.
o For JDBC Connection only: Authentication certificate supplied in Java Key Store
(JKS) along with password to open the JKS.
o For DBLINK Connection only: Authentication certificate supplied in Oracle Wallet.
 Connection using JDBC Driver
 Prerequisites
o The System Data User’s external system is installed with the JDK software and
the thin JDBC Driver “ojdbc6.jar”.
o The JDBC Driver file is added to the Java CLASSPATH.
o The PATH environment variable has the JDK’s bin directory added to it.
 Details
To connect to the FPDS MRS using JDBC SSL, the System Data User’s external
system requires:
o JDBC Driver – “ojdbc6.jar”.
o FPDS MRS authentication certificate (provided by DPAP as an attachment in
an encrypted email. File name is “osdbimrsdb.jks”)
o A password to open the “osdbimrsdb.jks” file (supplied by DPAP in a different
encrypted email).
o TNS Connection information to the FPDS MRS database (provided in the
sample java program below). The ipAddress and port number information is
masked in the below java program (the real ipAddress and Port# are provided
by DPAP in an encrypted email).
 Example
Here is a sample Java Program that shows how to connect to the FPDS MRS
database using the above information.
NOTE: DPAP will supply ipaddress/portNumber to use inside TNSNAMES
connection string, Oracle UserName/Password for the FPDS MRS, and the Trust
Store JKS file with a password to open it. For now, the sample program below has
fake values for all of these.
import
import
import
import
java.sql.DriverManager;
java.sql.Connection;
java.sql.SQLException;
java.util.Properties;
public class ojdbctest
{
public static void main(String[] argv)
{
System.out.println("-- Oracle JDBC Connection Testing --");
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
}
catch (ClassNotFoundException e)
Document Revision: V1.1
Page 4
{
System.out.println("Where is your Oracle JDBC Driver?");
e.printStackTrace();
return;
}
System.out.println("Oracle JDBC Driver Registered!");
Connection connection = null;
String url = "jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)
(HOST=999.99.99.999)(PORT=9999))(CONNECT_DATA=(SERVER=DEDICATED)
(SERVICE_NAME=mosdora.altess.army.mil)))";
Properties props = new Properties();
props.setProperty("user", "oracle_application_user");
props.setProperty("password", "password");
props.setProperty("javax.net.ssl.trustStore", "<Truststore path>/xxxx.jks");
props.setProperty("javax.net.ssl.trustStoreType","JKS");
props.setProperty("javax.net.ssl.trustStorePassword","trustStorePswd");
try
{
connection = DriverManager.getConnection(url, props);
}
catch (SQLException e)
{
System.out.println("Database connection failed! Check output console");
e.printStackTrace();
return;
}
if (connection != null)
{
System.out.println("Database connection successful!");
}
else
{
System.out.println("Database connection failed!");
}
}
}
 Connection using DBLink
 Prerequisites
o From the Oracle database, the System Data User’s external system uses SSL
authentication instead of native encryption to connect to FPDS MRS.
 Details
To connect to the FPDS MRS using DBLINK SSL, the System Data User’s
external system is required to:
o Save the Oracle wallet supplied by DPAP into an operating system folder
that is accessible by the database.
o Make necessary changes to SQLNET.ORA file
o Make necessary changes to TNSNAMES.ORA file
o Create a private DBLINK to FPDS MRS DB user account from Oracle
database.
Document Revision: V1.1
Page 5
o Make changes to SQLNET.ORA file:
o Remove or comment out if any of the variables set in SQLNET.ORA file
o SQLNET.ENCRYPTION_CLIENT
o SQLNET.ENCRYPTION_TYPES_CLIENT
o SQLNET.CRYPTO_CHECKSUM_CLIENT
o SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT
o Add the following two variables to SQLNET.ORA file and replace the tag
<WALLET_DIRECTORY_LOCATION> with the appropriate location value.
o SQLNET.AUTHENTICATION_SERVICES = (BEQ, TCPS)
o WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(
DIRECTORY=<WALLET_DIRECTORY_LOCATION>)))
o This full directory path of the Wallet will replace the
<WALLET_DIRECTORY_LOCATION> tag value.
o Make changes to TNSNAMES.ORA file:
o Add the following entry into TNSNAMES.ORA file to connect to the FPDS
MRS server's TCPS listener port. IPADDRESS and PORT NUMBER are
masked and should be replaced. These values will be supplied in an
encrypted email.
FPDS_MRS =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCPS)(HOST =999.99.99.999)(PORT = 9999))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = mosdora.altess.army.mil)
)
(SECURITY =
(SSL_SERVER_CERT_DN =
"CN=mosdora.altess.army.mil,OU=DoD,O=U.S. Government,C=US")
)
)
o Create a private DBLINK to FPDS MRS DB user account from Oracle
database
o Create the private database link with the following code.
CREATE DATABASE LINK "FPDS_MRS.ALTESS.ARMY.MIL"
CONNECT TO <FPDS MRS User Account Name>
IDENTIFIED BY "<FPDS MRS User Account Password>"
USING 'FPDS_MRS';
o System Data User’s external system must use the service name as
indicated in the previously mentioned tnsnames.ora (in the example above
it would be FPDS_MRS) to create the database link.
Document Revision: V1.1
Page 6
Summary
This document provides technical setup instructions for remote access to the FPDS MRS. This
includes the system requirements and the steps for connecting via either JDBC Driver or
DBLink. Once a connection is established, periodic data extracts pull data from FPDS MRS to
the System Data User’s external system. For more information on setting up data extracts,
please reference the next document in the FPDS MRS section of the DoD Procurement
Toolbox.
Document Revision: V1.1
Page 7