Google Cloud Search を設定すると、組織の SharePoint Online と Google Workspace のコンテンツも追加する必要があります。マイページ Google Cloud Search SharePoint Online コネクタを使用し、 特定の SharePoint Online データソースにアクセスできます。
重要な考慮事項
優先される SharePoint 設定
Cloud Search SharePoint Online コネクタは、SharePoint の [検索の公開設定] の設定を常に遵守しますが、この設定をオーバーライドすることはできません。下書きのドキュメントの場合、(コネクタが SharePoint Online へのアクセスに使用する)ユーザー アカウントの権限によって、インデックスに登録される下書きドキュメントと返される下書きドキュメントが決まります。アカウントの [Full Read] しかない場合「下書きアイテムの公開設定」が適用されます。できます。
また、ユーザー アカウントのアクセス権に基づいて結果を制限するようにコネクタを構成します。SharePoint コンテンツにセキュリティ トリミングを適用するには、次の外部 ID を Google Directory と同期します。
- Office 365 / Azure AD ユーザー
- Office 365 / Azure AD セキュリティ グループ
- SharePoint グループ(Office 365 ユーザーとグループがメンバーとして含まれる)
検索の最適化
ユーザーエクスペリエンスを改善してより関連性の高い検索結果を返すようにコネクタを設定できます。
API を使用するには、SharePoint Online コネクタ構成ファイルで HTML 生成パラメータの値を設定します。これらのパラメータを使用すると、一致への影響が大きい、または小さいフィールドを設定できます。
スキーマを設定するには、 スキーマを作成して登録するの手順に沿って操作します。スキーマを設定すると、次のようになります。
SharePoint コンテンツ タイプの名前を対応するオブジェクト定義にマッピングするために、コネクタはサポートされていない文字を除外してコンテンツ タイプ名を正規化します。Cloud Search API のオブジェクト定義では、有効な文字として A ~ Z、a ~ z、0 ~ 9 のみがサポートされます。たとえば、コンテンツ タイプは「Announcements」です。オブジェクト定義「Announcements」にマッピングされます。コンテンツ タイプが「ニュース記事」「NewsArticle」にマッピングされます。(スペースなし)を入力します。
オブジェクト定義とオブジェクト定義を照合できない場合、コネクタは代替オブジェクト タイプ(
itemMetadata.objectType
)を使用します。メタデータ構成パラメータの詳細を確認する。コネクタは SharePoint プロパティ名をプロパティ定義にマッピングします。
コネクタがコンテンツをインデックスに登録する際に Microsoft Outlook の .msg ファイルを検出すると、ファイルのコンテンツ タイプをオーバーライドして
application/vnd.ms-outlook.
としてインデックスに登録します
コネクタの既知の制限事項
- 各コネクタ インスタンスは、1 つのサイト コレクションからのみコンテンツをインデックスに登録できます。複数のサイト コレクションをインデックスに登録するには、追加のコネクタ インスタンスを設定します。
- メモリ消費量は、各サイト コレクションの ACL で使用するユニーク ユーザーとグループの数に応じて増加します。
- 削除通知は即時にではなく、ユーザーがソース リポジトリからコンテンツを削除したことをコネクタが認識するまでに 4 時間以上かかることがあります。
システム要件
システム要件 | |
---|---|
オペレーティング システム |
|
認証 |
|
ソフトウェア |
|
コネクタをデプロイする
前提条件
Google Workspace の秘密鍵を作成します。これにはサービス アカウント ID が含まれます。秘密鍵を取得する方法については、 Google Cloud Search API へのアクセスを構成するをご覧ください。
Google Workspace 管理者が検索するデータソースを追加する必要があります。データソースの ID を記録します。
コネクタが ACL に基づいて結果を返す場合(結果は公開されません)、Google Workspace 管理者は 2 つの ID ソースを作成し、その ID を提供する必要があります。
- 1 つは Office 365 のユーザーとグループ
- 1 つは SharePoint グループ用
また、管理者は、組織の Google Workspace お客様 ID を入手して提供する必要があります。
これらの値を取得する方法について詳しくは、Cloud Search でユーザー ID をマッピングするをご覧ください。
SharePoint Online サイト コレクション管理者の権限を持つコネクタのユーザー アカウントを設定します。
コネクタが ACL に基づいて結果を返す場合(結果が公開されない)場合は、Office 365 アカウントからユーザーとグループを読み取るための認証情報を作成します。Microsoft の手順に沿って Azure Active Directory アプリケーションを作成します。アプリの設定では、次のことを行います。
- アプリに、「gcs-o365-identity-connector」などのわかりやすい名前を付けます。
- 権限を追加します。アプリに「Group.Read.All」が必要「User.Read.All」です。
- コネクタ構成で使用するため、次の情報を記録します。
<ph type="x-smartling-placeholder">
- </ph>
- アプリケーション ID
- テナント
- クライアント シークレット
ステップ 1. SharePoint Online コネクタ ソフトウェアをインストールする
GitHub からコネクタ リポジトリのクローンを作成します。
$ git clone https://github.com/google-cloudsearch/sharepoint-connector.git $ cd sharepoint-connector
希望するバージョンのコネクタをチェックアウトします。
$ git checkout tags/v1-0.0.3
コネクタをビルドします。
$ mvn package
コネクタのビルド時にテストをスキップするには、
mvn package
ではなくmvn package -DskipTests
を実行します。コネクタ zip ファイルをローカルのインストール ディレクトリにコピーします。
$ cp target/google-cloudsearch-sharepoint-connector-v1-0.0.3.zip installation-dir $ cd installation-dir $ unzip google-cloudsearch-sharepoint-connector-v1-0.0.3.zip $ cd google-cloudsearch-sharepoint-connector-v1-0.0.3
ステップ 2. SharePoint Online コネクタ構成ファイルを作成する
コネクタのインストールと同じディレクトリに新しいファイルを作成し、
sharepoint-online-connector.config
という名前を付けます。多数のコネクタ インスタンスを実行する場合は、名前に詳細を追加して区別できるようにします。次の例のように、パラメータを Key-Value ペアとしてファイルの内容に追加します。
### SharePoint Online connector configuration ### # Required parameters for data source access api.sourceId=08ef8becd116faa4546b8ca2c84b2879 api.serviceAccountPrivateKeyFile=service_account.json # Required parameters for SharePoint Online access sharepoint.server=https://mydomain.onmicrosoft.com sharepoint.siteCollectionOnly=true sharepoint.username=admin@mydomain.onmicrosoft.com sharepoint.password=pa$sw0rd sharepoint.formsAuthenticationMode=LIVE sharepoint.deploymentType=ONLINE # SharePoint identity mapping parameters api.identitySourceId=08ef8becd116faa475de26d9b291fed9 api.referenceIdentitySources=defaultIdentitySource api.referenceIdentitySource.defaultIdentitySource.id=08ef8becd116faa5d3783f8c5a80e5aa # Optional SharePoint List Item metadata parameters contentTemplate.sharepointItem.title=Title contentTemplate.sharepointItem.unmappedColumnsMode=APPEND
各パラメータの詳細については、 構成パラメータのリファレンスをご覧ください。
(省略可)必要に応じて、追加のコネクタ パラメータを構成します。詳しくは、 Google 提供のコネクタ パラメータ。
ステップ 3. SharePoint Online コネクタのロギングを設定する
コネクタ バイナリを含むディレクトリに、logs という名前のフォルダを作成します。
同じディレクトリに logging.properties という名前の Latin-1 エンコード ファイルを作成し、次の内容を追加します。
handlers = java.util.logging.ConsoleHandler,java.util.logging.FileHandler # Default log level .level = INFO # uncomment line below to increase logging level for SharePoint APIsa #com.google.enterprise.cloudsearch.sharepoint.level=FINE # uncomment line below to increase logging level to enable API trace #com.google.api.client.http.level = FINE java.util.logging.ConsoleHandler.level = INFO java.util.logging.FileHandler.pattern=logs/connector-sharepoint.%g.log java.util.logging.FileHandler.limit=10485760 java.util.logging.FileHandler.count=10 java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
ステップ 4. SharePoint Online ID コネクタを構成する
この手順は、SharePoint Online の ID ベースの ACL を検索結果に適用するために必要です。公開 ACL を使用してコネクタを設定する場合は、この手順をスキップできます。
SharePoint Online コネクタのインストールと同じディレクトリに、
sharepoint-online-identity-connector.config
という名前を付けます。次の例のように、パラメータを Key-Value ペアとしてファイルの内容に追加します。
### SharePoint Online identity connector configuration ### # Required parameters for data source access api.customerId=C05d3djk8 api.serviceAccountPrivateKeyFile=service_account.json # Required parameters for SharePoint Online access sharepoint.server=https://mydomain.onmicrosoft.com sharepoint.siteCollectionOnly=true sharepoint.username=admin@mydomain.onmicrosoft.com sharepoint.password=pa$sw0rd sharepoint.formsAuthenticationMode=LIVE sharepoint.deploymentType=ONLINE # SharePoint identity mapping parameters api.identitySourceId=08ef8becd116faa475de26d9b291fed9 api.referenceIdentitySources=defaultIdentitySource api.referenceIdentitySource.defaultIdentitySource.id=08ef8becd116faa5d3783f8c5a80e5aa
値は、
api.sourceId
ではなくapi.customerId
である点を除き、SharePoint Online コネクタの場合とほぼ同じです。api.customerId
の値は、Google Workspace 管理者から取得したお客様 ID です。
ステップ 5. Office 365 Identity コネクタをインストールする
この手順は、SharePoint Online の ID ベースの ACL を検索結果に適用するために必要です。公開 ACL を使用してコネクタを設定する場合は、この手順をスキップできます。
GitHub からコネクタ リポジトリのクローンを作成します。
$ git clone https://github.com/google-cloudsearch/office-365-connector.git $ cd office-365-connector
希望するバージョンのコネクタをチェックアウトします。
$ git checkout tags/v1-0.0.3
コネクタをビルドします。
$ mvn package
コネクタのビルド時にテストをスキップするには、
mvn package
ではなくmvn package -DskipTests
を実行します。コネクタ zip ファイルをローカルのインストール ディレクトリにコピーします。
$ cp target/google-cloudsearch-office-365-connector-v1-0.0.3.zip installation-dir $ cd installation-dir $ unzip google-cloudsearch-office-365-connector-v1-0.0.3.zip $ cd google-cloudsearch-office-365-connector-v1-0.0.3
ステップ 6. Office 365 ID コネクタを構成してロギングを設定する
ID コネクタのインストールと同じディレクトリに、
o365-identity-connector.config
という名前を付けます。次の例のように、パラメータを Key-Value ペアとしてファイルの内容に追加します。注: すべてのパラメータは必須です。
### Office 365 Identity connector configuration ###
api.identitySourceId=12345abcde api.customerId=abcde12345 o365.clientId=a63c6eb3-29e7-486 o365.tenant=185ef9ed-29e7-486 o365.clientSecret=raHJN15vRLBKs各パラメータの詳細については、 Office 365 Identity Connectors の構成リファレンスをご覧ください。
コネクタ バイナリを含むディレクトリに、logs という名前のフォルダを作成します。
同じディレクトリに logging.properties という名前の ASCII または UTF-8 ファイルを作成し、次の内容を追加します。
handlers = java.util.logging.ConsoleHandler,java.util.logging.FileHandler # Default log level .level = INFO # uncomment line below to increase logging level for Office 365 APIs #com.google.enterprise.cloudsearch.o365.level=FINE # uncomment line below to increase logging level to enable Google API traces #com.google.api.client.http.level = FINE java.util.logging.ConsoleHandler.level = INFO java.util.logging.FileHandler.pattern=logs/connector-o365.%g.log java.util.logging.FileHandler.limit=10485760 java.util.logging.FileHandler.count=10 java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
ステップ 7. SharePoint Online コネクタを起動する
次の手順では、Office 365 と SharePoint サイト コレクションの両方のプリンシパルを Cloud Identity サービスの ID にマッピングします。この同期は、Office 365 ID コネクタと SharePoint Online ID コネクタを使用して行われます。
Office 365 コネクタがユーザーとグループを同期した後、SharePoint Online ID コネクタを実行して SharePoint サイト コレクション グループを同期します。次に、SharePoint Online コネクタを実行して、結果をインデックス登録して Cloud Search ユーザーに提供します。
Office 365 ID コネクタを実行します。
$ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-office-365-connector-v1-0.0.3.jar -Dconfig=o365-identity-connector.config
SharePoint Online ID コネクタを実行します。
$ java -Djava.util.logging.config.file=logging.properties -cp "google-cloudsearch-sharepoint-connector-v1-0.0.3.jar" com.google.enterprise.cloudsearch.sharepoint.SharePointIdentityConnector -Dconfig=sharepoint-online-identity-connector.config
SharePoint Online コネクタを実行します。
$ java -Djava.util.logging.config.file=logging.properties -jar google-cloudsearch-sharepoint-connector-v1-0.0.3.jar -Dconfig=sharepoint-online-connector.config
構成パラメータのリファレンス
データソース アクセス
設定 | パラメータ |
データソース ID | api.sourceId=1234567890abcdef
必須。Google Workspace 管理者がセットアップした Google Cloud Search データソース ID。 |
サービス アカウントの秘密鍵ファイルへのパス | api.serviceAccountPrivateKeyFile=PrivateKey.json
必須。Google Cloud Search サービス アカウント キー ファイルのパス。 |
SharePoint Online へのアクセス
設定 | パラメータ |
SharePoint サイト コレクションの完全修飾ドメイン名 | sharepoint.server= http://yoursharepoint.example.com/
必須。ドメイン名が完全修飾されていない場合は、コネクタホストで DNS オーバーライドを設定します。 |
サイト コレクション専用モード | sharepoint.siteCollectionOnly=true
必須。SharePoint Online の場合は、値 |
SharePoint ユーザー名 | sharepoint.username=username
必須。SharePoint Online へのアクセスに使用するアカウントのユーザー名。 |
SharePoint パスワード | sharepoint.password=user_password
必須。SharePoint Online へのアクセスに使用するアカウントのパスワード。 |
認証モード | sharepoint.formsAuthenticationMode=LIVE
必須。SharePoint Online の場合、値は常に「LIVE」です。 |
デプロイ タイプ | sharepoint.deploymentType=ONLINE
必須。SharePoint Online の場合、値は常に「Online」です。 |
SharePoint ID マッピング
設定 | パラメータ |
ID ソースの ID | api.identitySourceId=1234567890abcdef
必須。SharePoint グループの ID ソースの Cloud Search ID ソース ID。 |
参照 ID ソース | api.referenceIdentitySources=defaultIdentitySource
必須。SharePoint Online の場合、値は常に「defaultIdentitySource」です。 |
参照 ID ソースの ID | api.referenceIdentitySource.defaultIdentitySource.id=112233abcd
必須。Office 365 ユーザーと Google グループの ID ソースの Cloud Search ID ソースの ID。 |
HTML コンテンツの生成
設定 | パラメータ |
HTML テンプレート タイトル項目 | contentTemplate.sharePointItem.title=Title
生成された HTML の HTML テンプレート タイトルとして使用する [SharePoint] フィールド。 |
HTML コンテンツの高検索精度項目 | contentTemplate.sharePointItem.quality.high=highField1[,highField2,...]
生成された HTML に高品質のフィールドとして含めるフィールドのカンマ区切りのリスト。検索クエリの語句がこれらのフィールドと一致すると、検索結果が上位にランク付けされます。 |
HTML コンテンツの中検索精度項目 | contentTemplate.sharePointItem.quality.medium=mediumField1[,mediumField2,...]
生成された HTML に中程度の品質のフィールドとして含めるフィールドのカンマ区切りのリスト。 |
HTML コンテンツの低検索精度項目 | contentTemplate.sharePointItem.quality.low=lowField1[,lowField2,...]
生成された HTML に低品質フィールドとして含めるフィールドのカンマ区切りのリスト。 |
HTML コンテンツのマッピングされていない列 | contentTemplate.sharepointItem.unmappedColumnsMode=APPEND
コネクタがマッピングされていない列を処理する方法。値は APPEND(デフォルト)または IGNORE です。
|
Office 365 ID コネクタの設定
設定 | パラメータ |
ID ソースの ID | api.identitySourceId=1234567890abcdef
必須。Office 365 ID ソースの ID。この値は、SharePoint Online コネクタ構成の api.referenceIdentitySource.defaultIdentitySource.id の値と一致する必要があります。 |
Google お客様 ID | api.customerId=c1b1d1e1
必須。組織の Google Workspace お客様 ID。 |
Office 365 アプリケーション ID | o365.clientId=a63c6eb3-29e7-486
必須。Office 365 アプリケーション設定のアプリケーション ID。 |
Office 365 テナント | o365.tenant=185ef9ed-29e7-486
必須。Office 365 アカウントのテナント(Azure Activity Directory アプリ) |
Office 365 クライアント シークレット | o365.clientSecret=raHJN15vRLBKs
必須。Office 365 アプリケーション設定の認証情報シークレット |