blob: c3525071abc86946308f148492bb970a72de0f8a [file] [log] [blame]
<body>
<h3>Table Of Contents</h3>
<li><a href="#spadaptor">SharePoint Adaptor</a></li>
<li><a href="#spuserprofileadaptor">SharePoint User Profile Adaptor</a></li>
<h3 id="spadaptor">Adaptor for SharePoint Deployment</h3>
<p>A single instance of SharePoint adaptor can have GSA index a single
SharePoint Web Application. An adaptor instance is needed per Web Applicaton.
<h4>Requirements</h4>
<ul>
<li>GSA 7.2 or higher
<li>GSA user authentication configured for authentication system in use
(typically Active Directory)
<li>Java JRE on computer that runs adaptor (1.6u27 or higher on Linux;
1.7u6 or higher on Windows)
<li>SharePoint adaptor JAR executable
<li>User account, with Full Read permissions to SharePoint Web
Application, in the User Policy
<li>If running adaptor on Windows 7, Windows Server 2008, Windows Server 2008 R2
or Windows Server 2012 machine:
<p>
<b>Specify LAN Manager Authentication Level Policy</b>
<ol>
<li>Run <code>secpol.msc</code> on adaptor machine
<li>Under Security settings, navigate to Local policies > Security options.
<li>Select <b>Network security: LAN Manager authentication level</b> and
set it to <b>Send LM &amp; NTLM - use NTLMv2 session security if negotiated</b>.
</ol>
</p>
</ul>
<h4>Configure GSA for Adaptor</h4>
<ol>
<li>Add the IP address of the computer that hosts the adaptor to the <b>List
of Trusted IP Addresses</b> on the GSA.
<p>In the GSA's Admin Console, go to <b>Content Sources &gt; Feeds</b>,
and scroll down to <b>List of Trusted IP Addresses</b>. Add the IP address
for the adaptor to the list.
<li>Add the URLs provided by the adaptor to the <b>Follow Patterns</b> on the GSA.
<p>In the Admin console, go to <b>Content Sources &gt; Web Crawl &gt;
Start and Block URLs</b>, and scroll down to <b>Follow Patterns</b>.
Add an entry like <code>http://adaptor.example.com:5678/doc/
</code> where <code>adaptor.example.com</code> is the hostname of the
machine that hosts the adaptor. By default the adaptor runs on port 5678.
</ol>
<h4>Configure Adaptor</h4>
<ol>
<li>Create a file named <code>adaptor-config.properties</code> in the
directory that contains the adaptor binary. Within the file, provide the
configuration (replacing bolded items with your real configuration):
<pre>gsa.hostname=<b>yourgsa.example.com</b>
sharepoint.server=<b>http://yoursharepoint.example.com/</b></pre>
<li>If the adaptor will <em>not</em> be running as the user account that has
appropriate SharePoint permissions, then add these additional configuration
options to <code>adaptor-config.properties</code>:
<pre>sharepoint.username=<b>YOURDOMAIN\\AdaptorUser</b>
sharepoint.password=<b>uS3R_passWoRD</b></pre>
<li>If the adaptor needs to use <em>Live Authentication</em> to connect
to SharePoint, then add these additional configuration options
to <code>adaptor-config.properties</code>:
<pre>sharepoint.username=<b>AdaptorUser Live Authentication Id</b>
sharepoint.password=<b>uS3R_passWoRD</b>
sharepoint.useLiveAuthentication=<b>true</b></pre>
<li>If the adaptor needs to use <em>ADFS Authentication</em> to connect
to SharePoint, then add these additional configuration options
to <code>adaptor-config.properties</code>:
<pre>sharepoint.username=<b>AdaptorUser@yourdomain.com</b>
sharepoint.password=<b>uS3R_passWoRD</b>
sharepoint.sts.endpoint=<b>https://adfs.exaple.com/adfs/services/trust/2005/usernamemixed
</b>sharepoint.sts.realm=<b>urn:myserver:sharepoint</b> or <b>https://yoursharepoint.example.com/_trust</b></pre>
<li>Create a folder named <code>logs</code> in the same directory.
<li>Create a file named <code>logging.properties</code> in the same directory
that contains logging configuration:
<pre>
.level=INFO
handlers=java.util.logging.FileHandler,java.util.logging.ConsoleHandler
java.util.logging.FileHandler.formatter=com.google.enterprise.adaptor.CustomFormatter
java.util.logging.FileHandler.pattern=logs/adaptor.%g.log
java.util.logging.FileHandler.limit=10485760
java.util.logging.FileHandler.count=20
java.util.logging.ConsoleHandler.formatter=com.google.enterprise.adaptor.CustomFormatter</pre>
<li>Run the adaptor using cmd.exe:
<pre>java -Djava.util.logging.config.file=logging.properties -jar adaptor-sharepoint-YYYYMMDD-withlib.jar</pre>
</ol>
<h4>Running as a service</h4>
<p>Example service creation on Windows with prunsrv:
<pre>prunsrv install adaptor-sharepoint --StartPath="%CD%" ^
--Classpath=adaptor-sharepoint-YYYYMMDD-withlib.jar ^
--StartMode=jvm --StartClass=com.google.enterprise.adaptor.Daemon ^
--StartMethod=serviceStart --StartParams=com.google.enterprise.adaptor.sharepoint.SharePointAdaptor
--StopMode=jvm --StopClass=com.google.enterprise.adaptor.Daemon ^
--StopMethod=serviceStop --StdOutput=stdout.log --StdError=stderr.log ^
++JvmOptions=-Djava.util.logging.config.file=logging.properties</pre>
<p>Example execution on Linux with jsvc:
<pre>jsvc -pidfile adaptor.pid -cp adaptor-sharepoint-YYYYMMDD-withlib.jar com.google.enterprise.adaptor.Daemon com.google.enterprise.adaptor.sharepoint.SharePointAdaptor</pre>
<h4>Optional <code>adaptor-config.properties</code> fields</h4>
<dl>
<dt>
<code>server.dashboardPort</code>
</dt>
<dd>
Port on which to view web page showing information
and diagnostics. Defaults to "5679".
</dd>
<dt>
<code>sharepoint.xmlValidation</code>
</dt>
<dd>
Whether to enable strict checking of XML
responses using the expected schema.
Defaults to false.
</dd>
<dt>
<code>sharepoint.maxIndexableSize</code>
</dt>
<dd>
Number of bytes of a document that GSA indexes. Defaults to 2097152.
</dd>
<dt>
<dt>
<code>adaptor.namespace</code>
</dt>
<dd>
Namespace used for ACLs sent to GSA. Defaults to "Default".
</dd>
<dt>
<code>adaptor.docHeaderTimeoutSecs</code>
</dt>
<dd>
Number of seconds adaptor has to start sending content before it is
interrupted. Defaults to 30 seconds. Also used as connection timeout value for
establishing connection with SharePoint server for making web service calls.
</dd>
<dt>
<code>adaptor.docContentTimeoutSecs</code>
</dt>
<dd>
Number of seconds adaptor has to complete sending content before it is
interrupted. Timing starts when sending content starts.
Defaults to 180 seconds. Also used as request timeout value while making
SharePoint web service call to complete a particular web service call.
</dd>
<dt>
<code>server.port</code>
</dt>
<dd>
Port from which documents are served. GSA crawls this port.
Each instance of an adaptor on same machine requires a unique port.
Defaults to 5678.
</dd>
<dt>
<code>adaptor.incrementalPollPeriodSecs</code>
</dt>
<dd>
Schedule for getting recent updates. Defaults to 900 seconds which is 15 minutes.
</dd>
<br>
</dl>
<br>
<!-- SPUP -->
<h3 id="spuserprofileadaptor">Adaptor for SharePoint User Profiles Deployment</h3>
<p>A single instance of SharePoint User Profile adaptor can have GSA index
a single User Profile Service Application. An adaptor instance is needed per
User Profile Service Application.
<h4>Requirements</h4>
<ul>
<li>GSA 7.0 P1 or higher
<li>GSA user authentication configured for authentication system in use
(typically Active Directory)
<li>Java JRE on computer that runs adaptor (1.6u27 or higher on Linux;
1.7u6 or higher on Windows)
<li>SharePoint User Profile adaptor JAR executable
<li>User account, with Full Control permissions to SharePoint User
Profile Service Application
<li>If running adaptor on Windows 7, Windows Server 2008, Windows Server 2008 R2
or Windows Server 2012 machine:
<p>
<b>Specify LAN Manager Authentication Level Policy</b>
<ol>
<li>Run <code>secpol.msc</code> on adaptor machine
<li>Under Security settings, navigate to Local policies > Security options.
<li>Select <b>Network security: LAN Manager authentication level</b> and
set it to <b>Send LM &amp; NTLM - use NTLMv2 session security if negotiated</b>.
</ol>
</p>
</ul>
<h4>Configure GSA for Adaptor</h4>
<ol>
<li>Add the IP address of the computer that hosts the adaptor to the <b>List
of Trusted IP Addresses</b> on the GSA.
<p>In the GSA's Admin Console, go to <b>Content Sources &gt; Feeds</b>,
and scroll down to <b>List of Trusted IP Addresses</b>. Add the IP address
for the adaptor to the list.
<li>Add the URLs provided by the adaptor to the <b>Follow Patterns</b> on the GSA.
<p>In the Admin console, go to <b>Content Sources &gt; Web Crawl &gt;
Start and Block URLs</b>, and scroll down to <b>Follow Patterns</b>.
Add an entry like <code>http://adaptor.example.com:5678/doc/
</code> where <code>adaptor.example.com</code> is the hostname of the
machine that hosts the adaptor. By default the adaptor runs on port 5678.
<li>Create and configure a new result collection for user profile documents.
<p>In the Admin console, go to <b>Index &gt; Collections</b>, in the
<b>Create New Collection</b> section specify a unique name for the new
collection. Select <b>Empty</b> for <b>Initial Configuration</b> and click
<b>Create</b>.
<p>Then, in the <b>Current Collections</b> section click <b>Edit</b> for the
newly-created user profile collection. In the <b>Include Content Matching
the Following Patterns</b> box, add the URL pattern for the adaptor as used
in step 2 and click <b>Save</b>.
<li>Configure the default_collection to exclude user profile documents.
<p>In the Admin console at <b>Index &gt; Collection</b>, in the <b>Current
Collections</b> section click <b>Edit</b> for
<code>default_collection</code>. In the <b>Do Not Include Content Matching
the Following Patterns</b> box, add the URL pattern for the adaptor as used
in step 2 and click <b>Save</b>.
</ol>
<h4>Configure Adaptor</h4>
<ol>
<li>Create a file named <code>adaptor-config.properties</code> in the
directory that contains the adaptor binary. Within the file, provide the
configuration (replacing bolded items with your real configuration):
<pre>gsa.hostname=<b>yourgsa.example.com</b>
sharepoint.server=<b>http://yoursharepoint.example.com/</b></pre>
<li>If the adaptor will <em>not</em> be running as the user account that has
appropriate SharePoint permissions, then add these additional configuration
options to <code>adaptor-config.properties</code>:
<pre>sharepoint.username=<b>YOURDOMAIN\\AdaptorUser</b>
sharepoint.password=<b>uS3R_passWoRD</b></pre>
<li>If the adaptor needs to use <em>Live Authentication</em> to connect
to SharePoint, then add these additional configuration options
to <code>adaptor-config.properties</code>:
<pre>sharepoint.username=<b>AdaptorUser Live Authentication Id</b>
sharepoint.password=<b>uS3R_passWoRD</b>
sharepoint.useLiveAuthentication=<b>true</b></pre>
<li>If the adaptor needs to use <em>ADFS Authentication</em> to connect
to SharePoint, then add these additional configuration options
to <code>adaptor-config.properties</code>:
<pre>sharepoint.username=<b>AdaptorUser@yourdomain.com</b>
sharepoint.password=<b>uS3R_passWoRD</b>
sharepoint.sts.endpoint=<b>https://adfs.exaple.com/adfs/services/trust/2005/usernamemixed
</b>sharepoint.sts.realm=<b>urn:myserver:sharepoint</b> or <b>https://yoursharepoint.example.com/_trust</b></pre>
<li>Create a folder named <code>logs</code> in the same directory.
<li>Create a file named <code>logging.properties</code> in the same directory
that contains logging configuration:
<pre>
.level=INFO
handlers=java.util.logging.FileHandler,java.util.logging.ConsoleHandler
java.util.logging.FileHandler.formatter=com.google.enterprise.adaptor.CustomFormatter
java.util.logging.FileHandler.pattern=logs/adaptor.%g.log
java.util.logging.FileHandler.limit=10485760
java.util.logging.FileHandler.count=20
java.util.logging.ConsoleHandler.formatter=com.google.enterprise.adaptor.CustomFormatter</pre>
<li>Run the adaptor using cmd.exe:
<pre>java -Djava.util.logging.config.file=logging.properties -jar adaptor-sharepoint-user-profile-YYYYMMDD-withlib.jar</pre>
</ol>
<h4>Running as a service</h4>
<p>Example service creation on Windows with prunsrv:
<pre>prunsrv install adaptor-sharepoint-user-profile --StartPath="%CD%" ^
--Classpath=adaptor-sharepoint-user-profile-YYYYMMDD-withlib.jar ^
--StartMode=jvm --StartClass=com.google.enterprise.adaptor.Daemon ^
--StartMethod=serviceStart --StartParams=com.google.enterprise.adaptor.sharepoint.SharePointUserProfileAdaptor
--StopMode=jvm --StopClass=com.google.enterprise.adaptor.Daemon ^
--StopMethod=serviceStop --StdOutput=stdout.log --StdError=stderr.log ^
++JvmOptions=-Djava.util.logging.config.file=logging.properties</pre>
<p>Example execution on Linux with jsvc:
<pre>jsvc -pidfile adaptor.pid -cp adaptor-sharepoint-user-profile-YYYYMMDD-withlib.jar com.google.enterprise.adaptor.Daemon com.google.enterprise.adaptor.sharepoint.SharePointUserProfileAdaptor</pre>
<h4>Optional <code>adaptor-config.properties</code> fields</h4>
<dl>
<dt>
<code>server.dashboardPort</code>
</dt>
<dd>
Port on which to view web page showing information
and diagnostics. Defaults to "5679".
</dd>
<dt>
<dt>
<code>profile.setacl</code>
</dt>
<dd>
Whether user profile information is considered restricted
or public. Defaults to true.
</dd>
<dt>
<code>profile.mysitehost</code>
</dt>
<dd>
Defaults to virtual server.
</dd>
<dt>
<dt>
<code>adaptor.namespace</code>
</dt>
<dd>
Namespace used for ACLs sent to GSA. Defaults to "Default".
</dd>
<dt>
<code>adaptor.docHeaderTimeoutSecs</code>
</dt>
<dd>
Number of seconds adaptor has to start sending content before it is
interrupted. Defaults to 30 seconds. Also used as connection timeout value for
establishing connection with SharePoint server for making web service calls.
</dd>
<dt>
<code>adaptor.docContentTimeoutSecs</code>
</dt>
<dd>
Number of seconds adaptor has to complete sending content before it is
interrupted. Timing starts when sending content starts.
Defaults to 180 seconds. Also used as request timeout value while making
SharePoint web service call to complete a particular web service call.
</dd>
<dt>
<code>server.port</code>
</dt>
<dd>
Port from which documents are served. GSA crawls this port.
Each instance of an adaptor on same machine requires a unique port.
Defaults to 5678.
</dd>
<br>
</dl>
</body>