CData Sync App は、Microsoft OneNote データをデータベース、データレイク、またはデータウェアハウスに継続的にパイプライン化する簡単な方法を提供し、分析、レポート、AI、および機械学習で簡単に利用できるようにします。
Microsoft OneNote コネクタはCData Sync アプリケーションから使用可能で、Microsoft OneNote からデータを取得して、サポートされている任意の同期先に移動できます。
Sync App アプリケーションの接続 ページに移動し、接続の追加 パネルで対応するアイコンを選択して、Microsoft OneNote への接続を作成します。Microsoft OneNote アイコンが利用できない場合は、Add More アイコンをクリックしてCData サイトからMicrosoft OneNote コネクタをダウンロードおよびインストールします。
必須プロパティは[設定]タブにリストされています。[Advanced]タブには、通常は必要ない接続プロパティが表示されます。
Microsoft OneNote uses the OAuth authentication standard. To authenticate using OAuth, you will need to create an app to obtain the OAuthClientId, OAuthClientSecret, and CallbackURL connection properties.
Azure AD は、OAuth を使用して認証する接続タイプです。OAuth では認証するユーザーにインターネットブラウザでMicrosoft OneNote との通信を要求します。下記で説明するとおり、Sync App はさまざまな方法でこれをサポートします。 AuthScheme をAzureAD に設定します。すべてのAzure AD フローは、すでに設定済みであることを前提として書かれています。
認証に関する2つの方法の違いは、カスタムOAuth アプリケーションを使用する場合に、2つの接続プロパティを追加で設定する必要があることだけです。
次の接続プロパティを設定して、接続してください。
接続すると、Sync App はデフォルトブラウザでOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。
Web アプリケーション経由で接続する場合は、 Microsoft OneNote にカスタムOAuth アプリを登録する必要があります。カスタムAzureAD アプリの作成 を参照してください。それからSync App を使用してOAuth トークンの値を取得および管理します。 OAuth アクセストークンの取得
認証タイプに応じて以下のいずれかの接続プロパティグループを設定して、OAuthAccessToken を取得します。
続いてストアドプロシージャを呼び出し、OAuth 交換を完了します。
GetOAuthAuthorizationURL ストアドプロシージャを呼び出します。AuthMode インプットをWEB に、CallbackURL インプットをアプリケーション設定で指定したリダイレクトURI に設定します。必要に応じて、Permissions パラメータを設定してカスタム権限をリクエストします。
ストアドプロシージャがOAuth エンドポイントのURL を返します。
OAuthAccessToken 接続プロパティをストアドプロシージャで返されたアクセストークンに設定し、データに接続します。ExpiresIn 秒後に、アクセストークンの期限が切れたときは、GetOAuthAccessToken を呼び出し、新しいアクセストークンを取得します。
管理者の同意とは、Azure Active Directory テナントの管理者が、管理者の同意を必要とするアプリケーションに権限を付与することを指します。 CData Sync App 内の埋め込みアプリには、管理者の同意を必要とするアクセス許可はありません。したがって、この情報はカスタムアプリケーションにのみ適用されます。
管理者の同意の付与
Azure ポータルで新しいAzureAD アプリを作成する場合には、アプリに必要なアクセス許可を指定する必要があります。一部のアクセス許可には、「管理者の同意が必要」と記載されている場合があります。 例えば、すべてのグループのアクセス許可には管理者の同意が必要です。アプリに管理者の同意が必要な場合、いくつかの方法があります。
管理者の同意を付与する最も簡単な方法は、管理者がportal.azure.com にログインして、[アプリの登録]で作成したアプリに移動するだけです。API のアクセス許可で、 同意の付与をクリックして、アプリが作成されたテナントでアクセス権限を持つようにします。
組織に複数のテナントがある場合、または組織外の他のテナントにアプリのアクセス許可を与える必要がある場合、GetAdminConsentURL ストアドプロシージャを使用してAdmin Authorization URL を生成します。GetOAuthAuthorizationURL とは異なり、このエンドポイントから返される重要な情報はありません。OAuth アプリケーションが正常に認可されると、アクセス権限が付与されたことを示すBoolean 値が返されます。
管理者がOAuth アプリケーションを承認後、認証を続行できます。
クライアントOAuth フロー
クライアントOAuth フローに関連するすべての権限には、管理者の同意が必要です。これは、CData Sync App が埋め込まれたアプリをクライアントOAuth フローでは使用できないことを意味します。クライアント資格情報を使用するには、独自のOAuth アプリの作成が必要になります。 詳しくは、カスタムAzureAD アプリの作成 を参照してください。
portal.azure.com の[アプリの登録]で[API のアクセス許可]に移動し、Microsoft Graph アクセス許可を選択します。アクセス許可には、委任されたアクセス許可とアプリケーションの許可の2つの異なるアクセス許可セットがあります。 クライアントの資格情報認証時に使用されるアクセス許可は、[アプリケーションの許可]の下にあります。インテグレーションに必要なアクセス許可を選択します。
認証タイプに応じていずれかの接続プロパティグループを設定すると、接続できるようになります。
クライアント資格情報での認証は、他の接続同様に自動的に行われますが、ユーザーにプロンプトするウィンドウは表示されません。ユーザーコンテキストがないため、ブラウザのポップアップは必要ないからです。接続が行われ、内部的に処理されます。
Azure サービスプリンシパルは、OAuth を経由する接続タイプです。AuthScheme をAzureServicePrincipal に設定します。 Azure サービスプリンシパルとしての認証は、OAuth クライアントクレデンシャルフローを介して処理され、直接のユーザー認証は行われません。代わりに、クレデンシャルはアプリ自体のためだけに作成されます。アプリで実行されるすべてのタスクは、デフォルトユーザーコンテキストなしで実行されます。 リソースへのアプリケーションのアクセスは、割り当てられたロールの権限によって制御されます。
Note: ロールを割り当てる前に、カスタムアプリケーションを作成する必要があります。詳しくは、カスタムAzureAD アプリの作成 を参照してください。
Azure サービスプリンシパルを使用して認証する場合、Azure AD テナントにアプリケーションを登録する必要があります。以下の手順に従って、ロールベースのアクセス制御で使用できる新しいサービスプリンシパルを作成します。
両メソッド共通
クライアントシークレットか証明書認証を選択する前に、まず以下の手順に従って設定を行います。その後、該当するセクションの設定に進んでください。
続いて、以下を設定します。
証明書を使用した認証
続いて、以下を設定します。
Azure VM 上でMicrosoft OneNote を実行している場合は、Managed Service Identity(MSI)の資格情報を利用して接続が可能です。
MSI 資格情報が認証用に自動的に取得されます。
The CData Sync App can be used to perform administrative tasks. This can be done by specifying the UserId column to execute CUD operations.
Many tables expose a special UserId column. This is designed to be used by an administrator to modify records on another user's account. If
you are not an administrator or do not desire this behavior, do not specify the UserId when performing an INSERT / UPDATE / DELETE operation.
For instance, executing the following will insert a notebook for another user:
INSERT INTO Notebooks (displayName, UserId) VALUES ('Test Notebook', '12345')
The above request will have the overall effect of attempting to add a notebook under the resource at /users/12345/notebooks. When UserId is not specified, the resources affected will instead be modified under /users/me/notebooks. In general if you are not an administrator, you can only affect or view records under /users/me, so it is not recommended to set UserId when you are not an admin.
このセクションでは、Microsoft OneNote Sync App の高度な機能を厳選して説明します。
Sync App を使用すると、事前設定されたクエリによって内容が決定されるユーザー定義ビューと呼ばれる仮想テーブルを定義できます。 このビューは、ドライバーに発行されるクエリを直接制御できない場合に有効です。 カスタムビューの作成と設定の概要については、ユーザー定義ビュー を参照してください。
SSL の設定 を使用して、Sync App が証明書のネゴシエーションをどのように扱うかを調整します。さまざまな証明書形式を選択できます。 詳しくは、接続文字列オプションにあるSSLServerCert プロパティを参照してください。
Windows プロキシとHTTP プロキシを含むファイアウォールとプロキシ に合致するようSync App を設定します。トンネル接続を設定することもできます。
Sync App は、Microsoft OneNote にできるだけ多くのSELECT ステートメント処理をオフロードし、残りのクエリをクライアント側のインメモリで処理します。
詳しくはクエリ処理 を参照してください。
CData ログを調整するために使用可能な設定の概要については、ログ を参照してください。基本的なロギングでは、 次の2つの接続プロパティを設定するだけです。LogModules 接続プロパティを使用してログに記録する情報のサブセットを選択できる、 より洗練されたロギングをサポートする多数の機能があります。
デフォルトでは、Sync App はサーバーの証明書をシステムの信頼できる証明書ストアと照合してSSL / TLS のネゴシエーションを試みます。
別の証明書を指定するには、利用可能なフォーマットについてSSLServerCert プロパティを参照してください。
Windows のシステムプロキシ経由の接続では、接続プロパティを追加で設定する必要はありません。他のプロキシに接続するには、ProxyAutoDetect をfalse に設定します。
さらにHTTP プロキシへの認証には、ProxyServer とProxyPort に加えてProxyAuthScheme、ProxyUser、およびProxyPassword を設定します。
次のプロパティを設定します。
This section shows the available API objects and provides more information on executing SQL to Microsoft OneNote APIs.
ビュー describes the available views. Views are statically defined to model Users and Groups.
テーブル describes the available tables. Tables are statically defined to model Notebooks, SectionGroups, Sections and Pages.
ストアドプロシージャ are function-like interfaces to OneNote. They can be used to search, create, and modify information in OneNote.
Sync App はMicrosoft OneNote のデータを、標準のSQL ステートメントを使用してクエリできるテーブルのリストにモデル化します。
一般的には、Microsoft OneNote テーブルのクエリは、リレーショナルデータベースのテーブルのクエリと同じです。時には特別なケースもあります。例えば、テーブルの特定のカラムデータを取得するために特定のカラムをWHERE 句に含める必要がある場合などです。これは通常、特定のカラムを取得するために行ごとに個別のリクエストを行う必要がある場合に必要です。これらの特別な状況は、以下にリンクされているテーブルページの上部に明確に文書化されています。
Name | Description |
Notebooks | Retrieves all Notebooks for the authenticated user. |
SectionGroups | Retrieves all SectionGroups accross notebooks for the authenticated user. |
Sections | Retrieves all Sections accross notebooks for the authenticated user. |
Retrieves all Notebooks for the authenticated user.
Most filters are handled server side, but the specific fields of Id, UserId, and GroupId will change the endpoint we use to retrieve the data. They must be specified with an '=' or IN condition. For example:
SELECT * FROM Notebooks WHERE Id = '1-56e2fc02-f3dd-4f82-82fb-519bc4807935' SELECT * FROM Notebooks WHERE Id IN ('1-56e2fc02-f3dd-4f82-82fb-519bc4807935', '1-56e2fc02-f3dd-4f82-fvgf-dfsdf4807935') SELECT * FROM Notebooks WHERE UserId = '9525a3f1-aa40-4f17-a97b-68606d118adf' SELECT * FROM Notebooks WHERE GroupId = '044d385d-6ca8-4d81-800d-223124b651db'
The column required to perform an Insert operation on Notebooks table is DisplayName. If the INSERT operation is done on behalf of a group or user then UserId or GroupId should also be specified.
The following examples illustrate an Insert operation on Notebooks:
INSERT INTO Notebooks (DisplayName) VALUES ('Getting started') INSERT INTO Notebooks (DisplayName, UserId) VALUES ('Getting started','9525a3f1-aa40-4f17-a97b-68606d118adf') INSERT INTO Notebooks (DisplayName, GroupId) VALUES ('Getting started','044d385d-6ca8-4d81-800d-223124b651db')
Name | Type | ReadOnly | Description |
id [KEY] | String | True |
The id of the notebook. |
self | String | False |
The self of the notebook. |
createdDateTime | Datetime | False |
The created DateTime of the notebook. |
createdBy_application_displayName | String | False |
The createdBy_application_displayName of the notebook. |
createdBy_application_id | String | False |
The createdBy_application_id of the notebook. |
displayName | String | False |
The display name of the notebook. |
lastModifiedBy_application_displayName | String | False |
The lastModifiedBy_application_displayName of the notebook. |
lastModifiedBy_application_id | String | False |
The lastModifiedBy_application_id of the notebook. |
lastModifiedDateTime | Datetime | False |
The lastModified DateTime of the notebook. |
isDefault | Bool | False |
Indicator if notebook is default. |
isShared | Bool | False |
Indicator if notebook is shared. |
links_oneNoteClientUrl_href | String | False |
The links_oneNoteClientUrl_href of the notebook. |
sectionGroupsUrl | String | False |
The sectionGroups Url of the notebook. |
sectionsUrl | String | False |
The sectionsUrl of the notebook. |
userRole | String | False |
The userRole of the notebook. |
createdBy_user_displayName | String | False |
The createdBy user displayName of the notebook |
createdBy_user_id | String | False |
The createdBy user id of the notebook |
UserId | String | False |
The userId that the authenticated user is impersonating. |
GroupId | String | False |
The groupId that the authenticated user is impersonating. |
Retrieves all SectionGroups accross notebooks for the authenticated user.
Most filters are handled server side, but the specific fields of Id, UserId, GroupId and ParentNotebookId will change the endpoint we use to retrieve the data. They must be specified with an '=' or IN condition. For example:
SELECT * FROM SectionGroups WHERE Id = '1-56e2fc02-f3dd-4f82-82fb-519bc4807935' SELECT * FROM SectionGroups WHERE ParentNotebookId = '1-2342423-1234-3424-82fb-519bc4807935' SELECT * FROM SectionGroups WHERE Id IN ('1-56e2fc02-f3dd-4f82-82fb-519bc4807935','1-sdcgw3324-f3dd-5678-derf-519bc4807935') SELECT * FROM SectionGroups WHERE ParentNotebookId IN ('1-56e2fc02-f3dd-4f82-82fb-519bc4807935','1-sdcgw3324-f3dd-5678-derf-519bc4807935') SELECT * FROM SectionGroups WHERE UserId = '9525a3f1-aa40-4f17-a97b-68606d118adf' SELECT * FROM SectionGroups WHERE GroupId = '044d385d-6ca8-4d81-800d-223124b651db'
The columns required to perform an Insert operation on SectionGroups table is DisplayName and ParentNotebookId. If the INSERT operation is done on behalf of a group or user then UserId or GroupId should also be specified.
The following examples illustrate an Insert operation on SectionGroups:
INSERT INTO SectionGroups (DisplayName, ParentNotebookId) VALUES ('Getting started','1-5c57790b-73c3-4996-940e-07c3f2157571') INSERT INTO SectionGroups (DisplayName, ParentNotebookId, UserId) VALUES ('Getting started','1-5c57790b-73c3-4996-940e-07c3f2157571', '9525a3f1-aa40-4f17-a97b-68606d118adf') INSERT INTO SectionGroups (DisplayName, ParentNotebookId, GroupId) VALUES ('Getting started','1-5c57790b-73c3-4996-940e-07c3f2157571', '044d385d-6ca8-4d81-800d-223124b651db')
Name | Type | ReadOnly | Description |
id [KEY] | String | True |
The id of the section group. |
self | String | False |
The self of the section group. |
createdDateTime | Datetime | False |
The createdDateTime of the section group. |
createdBy_application_displayName | String | False |
The createdBy_application_displayName of the section group. |
createdBy_application_id | String | False |
The createdBy_application_id of the section group. |
displayName | String | False |
The displayName of the section group. |
lastModifiedBy_application_displayName | String | False |
The lastModifiedBy_application_displayName of the section group. |
lastModifiedBy_application_id | String | False |
The lastModifiedBy_application_id of the section group. |
lastModifiedDateTime | Datetime | False |
The lastModifiedDateTime of the section group. |
sectionGroupsUrl | String | False |
The sectionGroupsUrl of the section group. |
sectionsUrl | String | False |
The sectionsUrl of the section group. |
ParentNotebookId | String | False |
The ParentNotebookId of the section group. |
ParentSectionGroupId | String | False |
The ParentSectionGroupId of the section group. |
createdBy_user_displayName | String | False |
The createdBy_user_displayName of the section group. |
createdBy_user_id | String | False |
The createdBy_user_id of the section group. |
UserId | String | False |
The userId that the authenticated user is impersonating. |
GroupId | String | False |
The groupId that the authenticated user is impersonating. |
Retrieves all Sections accross notebooks for the authenticated user.
Most filters are handled server side, but the specific fields of Id, UserId, GroupId, ParentNotebookId and ParentSectionGroupId will change the endpoint we use to retrieve the data. They must be specified with an '=' or IN condition. For example:
SELECT * FROM Sections WHERE Id = '1-56e2fc02-f3dd-4f82-82fb-519bc4807935' SELECT * FROM Sections WHERE ParentNotebookId = '1-56e2fc02-f3dd-4f82-82fb-519bc4807935' SELECT * FROM Sections WHERE ParentSectionGroupId = '1-56e2fc02-f3dd-4f82-82fb-519bc4807935' SELECT * FROM Sections WHERE Id IN ('1-56e2fc02-f3dd-4f82-82fb-519bc4807935','1-23423-f3dd-rtsd-gfds-4353423fsdf') SELECT * FROM Sections WHERE ParentNotebookId IN ('1-56e2fc02-f3dd-4f82-82fb-519bc4807935','1-23423-f3dd-rtsd-gfds-4353423fsdf') SELECT * FROM Sections WHERE ParentSectionGroupId IN ('1-56e2fc02-f3dd-4f82-82fb-519bc4807935','1-23423-f3dd-rtsd-gfds-4353423fsdf') SELECT * FROM Sections WHERE UserId = '9525a3f1-aa40-4f17-a97b-68606d118adf' SELECT * FROM Sections WHERE GroupId = '044d385d-6ca8-4d81-800d-223124b651db'
The columns required to perform an Insert operation on Sections table is DisplayName and ParentNotebookId. If the INSERT operation is done on behalf of a group or user then UserId or GroupId should also be specified.
The following examples illustrate an Insert operation on Sections:
INSERT INTO Sections (DisplayName, ParentNotebookId) VALUES ('Getting started','1-5c57790b-73c3-4996-940e-07c3f2157571') INSERT INTO Sections (DisplayName, ParentNotebookId, UserId) VALUES ('Getting started','1-5c57790b-73c3-4996-940e-07c3f2157571', '9525a3f1-aa40-4f17-a97b-68606d118adf') INSERT INTO Sections (DisplayName, ParentNotebookId, GroupId) VALUES ('Getting started','1-5c57790b-73c3-4996-940e-07c3f2157571', '044d385d-6ca8-4d81-800d-223124b651db')
Name | Type | ReadOnly | Description |
id [KEY] | String | True |
The id of the section. |
self | String | False |
The self of the section. |
createdDateTime | Datetime | False |
The createdDateTime of the section. |
createdBy_application_displayName | String | False |
The createdBy_application_displayName of the section. |
createdBy_application_id | String | False |
The createdBy_application_id of the section. |
displayName | String | False |
The displayName of the section. |
lastModifiedBy_application_displayName | String | False |
The lastModifiedBy_application_displayName of the section. |
lastModifiedBy_application_id | String | False |
The lastModifiedBy_application_id of the section. |
lastModifiedDateTime | Datetime | False |
The lastModifiedDateTime of the section. |
isDefault | Bool | False |
The isDefault of the section. |
links_oneNoteClientUrl_href | String | False |
The links_oneNoteClientUrl_href of the section. |
pagesUrl | String | False |
The pagesUrl of the section. |
ParentNotebookId | String | False |
The ParentNotebookId of the section. |
ParentSectionGroupId | String | False |
The ParentSectionGroupId of the section. |
createdBy_user_displayName | String | False |
The createdBy_user_displayName of the section. |
createdBy_user_id | String | False |
The createdBy_user_id of the section. |
UserId | String | False |
The userId that the authenticated user is impersonating. |
GroupId | String | False |
The groupId that the authenticated user is impersonating. |
ビューは、カラムと疑似カラムで構成されます。ビューは、データを示すという点でテーブルに似ていますが、ビューでは更新はサポートされません。通常、ビューとして表されるエンティティは、読み取り専用のエンティティです。多くの場合、これらのデータはストアドプロシージャを使用することで更新できます(その機能がデータソースに適用できる場合)。
ビューに対しては、通常のテーブルと同じようにクエリを実行でき、このときに返されるデータも同様です。
ビューとして公開されるクエリなどの動的ビューや、project_team ワークアイテムの特定の組み合わせを検索するためのビューがサポートされています。
Name | Description |
Groups | Retrieves all Azure Active Directory (Azure AD) groups, which can be Office 365 groups, or security groups. |
Pages | Retrieves all Pages accross notebooks for the authenticated user. |
Users | Retrieves all Azure AD user accounts within the authenticated permissions. |
Retrieves all Azure Active Directory (Azure AD) groups, which can be Office 365 groups, or security groups.
Groups require Administrator permissions. To work with them, you must create your own custom OAuth App and set the appropriate OAuthClientId and OAuthClientSecret. In this app, you must configure it to request the Group.Read.All permission. This can be done at https://apps.dev.microsoft.com, or in the App Registrations panel at http://portal.azure.com. See カスタムAzureAD アプリの作成 for more details on creating a custom app.
To authorize Groups permissions, an administrator must grant the Groups permissions for your organization at large. This can be done via the
administrator authorization endpoint. Simply have the administrator navigate to the following web page and grant permissions. Then
run the OAuth authorization as normal afterwards.
https://login.microsoftonline.com/common/adminconsent?client_id=[YourClientId]&redirect_uri=http://localhost:33333
Most filters are handled server side, but the specific field of Id will change the endpoint we use to retrieve the data. It must be specified with an '=' or IN condition. For example:
SELECT * FROM Groups WHERE Id = '616391f0-32d8-4127-8f25-aa55771d6617' SELECT * FROM Groups WHERE Id IN ('616391f0-32d8-4127-8f25-aa55771d6617', 'dfgd4rw3-5rvg-76hy-tr5t-aa55771d6617')
Name | Type | Description |
ParentReference | String | The Parent Reference of the group. |
id [KEY] | String | The Id of the group. |
deletedDateTime | Datetime | The datetime when the group was deleted. |
allowExternalSenders | Bool | The indicator showing if external senders should be allowed or not. |
assignedLabels | String | The assigned labels of the group |
assignedLicenses | String | The assigned licenses of the group. |
autoSubscribeNewMembers | Bool | The indicator showing if new members should be autosubscribed. |
classification | String | The classification of the group. |
createdDateTime | Datetime | The created DateTime of the group. |
description | String | The description of the group. |
displayName | String | The display name of the group. |
expirationDateTime | Datetime | The expiration datetime of the group. |
groupTypes | String | The types of the group. |
hasMembersWithLicenseErrors | Bool | Indicator if there are members with license error. |
hideFromAddressLists | Bool | The hide From AddressLists of the group. |
hideFromOutlookClients | Bool | The hide From OutlookClients of the group. |
isArchived | Bool | Indicator if group is archived. |
isSubscribedByMail | Bool | Indicator if group is subscribed by email. |
licenseProcessingState_state | String | The license processing state of the group. |
String | The mail of the group. | |
mailEnabled | Bool | Indicator if mail is enabled in the group. |
mailNickname | String | The mail nickname of the group. |
membershipRule | String | The membership rule of the group. |
membershipRuleProcessingState | String | The membership rule processing state of the group. |
onPremisesDomainName | String | The domain name of the group. |
onPremisesLastSyncDateTime | Datetime | The LastSync DateTime of the group. |
onPremisesNetBiosName | String | The Net Bios Name of the group. |
onPremisesProvisioningErrors | String | The provisioning errors of the group. |
onPremisesSamAccountName | String | The Sam Account Name of the group. |
onPremisesSecurityIdentifier | String | The security identifier of the group. |
onPremisesSyncEnabled | Bool | Indicator if sync is enabled in the group. |
preferredDataLocation | String | The preferred data location of the group. |
preferredLanguage | String | preferred language in the group. |
proxyAddresses | String | The proxy addresses of the group. |
renewedDateTime | Datetime | The renewed DateTime of the group. |
securityEnabled | Bool | Indicator if security is enabled in the group. |
securityIdentifier | String | The security identifier of the group. |
theme | String | The theme of the group. |
unseenCount | Int | The unseen count of the group. |
visibility | String | The visibility of the group. |
Retrieves all Pages accross notebooks for the authenticated user.
Most filters are handled server side, but the specific fields of Id, ParentSectionId, UserId or GroupId will change the endpoint we use to retrieve the data. They must be specified with an '=' or IN condition.
For example:
SELECT * FROM Pages WHERE Id = '1-e8992fa8e5254df387d062d04e75a6e7!6-e8341f6e-75b1-4811-8bb4-d2069c7f7a2d' SELECT * FROM Pages WHERE Id IN ('1193-dsdda-9392-4706514c636b', '1193-dsdda-9392-sdfasdw33324') SELECT * FROM Pages WHERE ParentSectionId = '1-e8341f6e-75b1-4811-8bb4-d2069c7f7a2d' SELECT * FROM Pages WHERE ParentSectionId = '1-e8341f6e-75b1-4811-8bb4-d2069c7f7a2d' AND UserId = '92dfdfc6-f1d4-4965-9f71-30e4da4fa7fe' SELECT * FROM Pages WHERE ParentSectionId = '1-e8341f6e-75b1-4811-8bb4-d2069c7f7a2d' AND GroupId = '1772bb5a-f8e9-405d-a90b-eac11b0b9b9a' SELECT * FROM Pages WHERE GroupId = 'acabe397-8370-4c31-aeb7-2d7ae6b8cda1' SELECT * FROM Pages WHERE UserId = '92dfdfc6-f1d4-4965-9f71-30e4da4fa7fe'
Name | Type | Description |
id [KEY] | String | The id of the page. |
self | String | The self of the page. |
createdDateTime | Datetime | The createdDateTime of the page. |
contentUrl | String | The contentUrl of the page. |
createdByAppId | String | The createdByAppId of the page. |
lastModifiedDateTime | Datetime | The lastModifiedDateTime of the page. |
level | Int | The level of the page. |
links_oneNoteClientUrl_href | String | The links_oneNoteClientUrl_href of the page |
order | Int | The order of the page. |
title | String | The title of the page. |
userTags | String | The userTags of the page. |
ParentSectionId | String | The ParentSectionId of the page. |
UserId | String | The userId that the authenticated user is impersonating. |
GroupId | String | The groupId that the authenticated user is impersonating. |
Retrieves all Azure AD user accounts within the authenticated permissions.
Users require Administrator permissions. To work with them, you must create your own custom OAuth App and set the appropriate OAuthClientId and OAuthClientSecret. In this app, you must configure it to request the User.Read.All permission. This can be done at https://apps.dev.microsoft.com, or in the App Registrations panel at http://portal.azure.com. See カスタムAzureAD アプリの作成 for more details on creating a custom app.
To authorize User permissions, an administrator must grant the Users permissions for your organization at large. This can be done via the
administrator authorization endpoint. Simply have the administrator navigate to the following web page and grant permissions. Then
run the OAuth authorization as normal afterwards.
https://login.microsoftonline.com/common/adminconsent?client_id=[YourClientId]&redirect_uri=http://localhost:33333
Most filters are handled server side, but the specific field of Id will change the endpoint we use to retrieve the data. It must be specified with an '=' or IN condition. For example:
SELECT * FROM Users WHERE Id = '616391f0-32d8-4127-8f25-aa55771d6617' SELECT * FROM Users WHERE Id IN ('616391f0-32d8-4127-8f25-aa55771d6617', 'dfgd4rw3-5rvg-76hy-tr5t-aa55771d6617')
Name | Type | Description |
id [KEY] | String | The id of the user. |
deletedDateTime | Datetime | The deletedDateTime of the user. |
aboutMe | String | The aboutMe of the user. |
accountEnabled | Bool | Indicates if accountEnabled for the user. |
ageGroup | String | The ageGroup of the user. |
assignedLicenses | String | The assignedLicenses of the user. |
assignedPlans | String | The assignedPlans of the user. |
birthday | Datetime | The birthday of the user. |
businessPhones | String | The businessPhones of the user. |
city | String | The city of the user. |
companyName | String | The companyName of the user. |
consentProvidedForMinor | String | The consentProvidedForMinor of the user. |
country | String | The country of the user. |
createdDateTime | Datetime | The createdDateTime of the user. |
creationType | String | The creationType of the user. |
department | String | The department of the user. |
deviceEnrollmentLimit | Int | The deviceEnrollmentLimit of the user. |
displayName | String | The displayName of the user. |
employeeHireDate | Datetime | The employeeHireDate of the user. |
employeeId | String | The employeeId of the user. |
employeeOrgData_costCenter | String | The employeeOrgData_costCenter of the user. |
employeeOrgData_division | String | The employeeOrgData_division of the user. |
employeeType | String | The employeeType of the user. |
externalUserState | String | The externalUserState of the user. |
externalUserStateChangeDateTime | Datetime | The externalUserStateChangeDateTime of the user. |
faxNumber | String | The faxNumber of the user. |
givenName | String | The givenName of the user. |
hireDate | Datetime | The hireDate of the user. |
identities | String | The identities of the user. |
imAddresses | String | The imAddresses of the user. |
interests | String | The interests of the user. |
isResourceAccount | Bool | Indicates if it isResourceAccount of the user. |
jobTitle | String | The jobTitle of the user. |
lastPasswordChangeDateTime | Datetime | The lastPasswordChangeDateTime of the user. |
legalAgeGroupClassification | String | The legalAgeGroupClassification of the user. |
licenseAssignmentStates | String | The licenseAssignmentStates of the user. |
String | The mail of the user. | |
mailboxSettings_archiveFolder | String | The mailboxSettings_archiveFolder of the user. |
mailboxSettings_automaticRepliesSetting_externalAudience | String | The mailboxSettings_automaticRepliesSetting_externalAudience of the user. |
mailboxSettings_automaticRepliesSetting_externalReplyMessage | String | The mailboxSettings_automaticRepliesSetting_externalReplyMessage of the user. |
mailboxSettings_automaticRepliesSetting_internalReplyMessage | String | The mailboxSettings_automaticRepliesSetting_internalReplyMessage of the user. |
mailboxSettings_automaticRepliesSetting_scheduledEndDateTime_dateTime | Datetime | The mailboxSettings_automaticRepliesSetting_scheduledEndDateTime_dateTime of the user. |
mailboxSettings_automaticRepliesSetting_scheduledEndDateTime_timeZone | String | The mailboxSettings_automaticRepliesSetting_scheduledEndDateTime_timeZone of the user. |
mailboxSettings_automaticRepliesSetting_status | String | The mailboxSettings_automaticRepliesSetting_status of the user. |
mailboxSettings_dateFormat | String | The mailboxSettings_dateFormat of the user. |
mailboxSettings_delegateMeetingMessageDeliveryOptions | String | The mailboxSettings_delegateMeetingMessageDeliveryOptions of the user. |
mailboxSettings_language_displayName | String | The mailboxSettings_language_displayName of the user. |
mailboxSettings_language_locale | String | The mailboxSettings_language_locale of the user. |
mailboxSettings_timeFormat | String | The mailboxSettings_timeFormat of the user. |
mailboxSettings_timeZone | String | The mailboxSettings_timeZone of the user. |
mailboxSettings_workingHours_daysOfWeek | String | The mailboxSettings_workingHours_daysOfWeek of the user. |
mailboxSettings_workingHours_endTime | Time | The mailboxSettings_workingHours_endTime of the user. |
mailboxSettings_workingHours_startTime | Time | The mailboxSettings_workingHours_startTime of the user. |
mailboxSettings_workingHours_timeZone_name | String | The mailboxSettings_workingHours_timeZone_name of the user. |
mailNickname | String | The mailNickname of the user. |
mobilePhone | String | The mobilePhone of the user. |
mySite | String | The mySite of the user. |
officeLocation | String | The officeLocation of the user. |
onPremisesDistinguishedName | String | The onPremisesDistinguishedName of the user. |
onPremisesDomainName | String | The onPremisesDomainName of the user. |
onPremisesExtensionAttributes_extensionAttribute1 | String | The onPremisesExtensionAttributes_extensionAttribute1 of the user. |
onPremisesExtensionAttributes_extensionAttribute10 | String | The onPremisesExtensionAttributes_extensionAttribute10 of the user. |
onPremisesExtensionAttributes_extensionAttribute11 | String | The onPremisesExtensionAttributes_extensionAttribute11 of the user. |
onPremisesExtensionAttributes_extensionAttribute12 | String | The onPremisesExtensionAttributes_extensionAttribute12 of the user. |
onPremisesExtensionAttributes_extensionAttribute13 | String | The onPremisesExtensionAttributes_extensionAttribute13 of the user. |
onPremisesExtensionAttributes_extensionAttribute14 | String | The onPremisesExtensionAttributes_extensionAttribute14 of the user. |
onPremisesExtensionAttributes_extensionAttribute15 | String | The onPremisesExtensionAttributes_extensionAttribute15 of the user. |
onPremisesExtensionAttributes_extensionAttribute2 | String | The onPremisesExtensionAttributes_extensionAttribute2 of the user. |
onPremisesExtensionAttributes_extensionAttribute3 | String | The onPremisesExtensionAttributes_extensionAttribute3 of the user. |
onPremisesExtensionAttributes_extensionAttribute4 | String | The onPremisesExtensionAttributes_extensionAttribute4 of the user. |
onPremisesExtensionAttributes_extensionAttribute5 | String | The onPremisesExtensionAttributes_extensionAttribute5 of the user. |
onPremisesExtensionAttributes_extensionAttribute6 | String | The onPremisesExtensionAttributes_extensionAttribute6 of the user. |
onPremisesExtensionAttributes_extensionAttribute7 | String | The onPremisesExtensionAttributes_extensionAttribute7 of the user. |
onPremisesExtensionAttributes_extensionAttribute8 | String | The onPremisesExtensionAttributes_extensionAttribute8 of the user. |
onPremisesExtensionAttributes_extensionAttribute9 | String | The onPremisesExtensionAttributes_extensionAttribute9 of the user. |
onPremisesImmutableId | String | The onPremisesImmutableId of the user. |
onPremisesLastSyncDateTime | Datetime | The onPremisesLastSyncDateTime of the user. |
onPremisesProvisioningErrors | String | The onPremisesProvisioningErrors of the user. |
onPremisesSamAccountName | String | The onPremisesSamAccountName of the user. |
onPremisesSecurityIdentifier | String | The onPremisesSecurityIdentifier of the user. |
onPremisesSyncEnabled | Bool | Indicates onPremisesSyncEnabled for the user. |
onPremisesUserPrincipalName | String | The onPremisesUserPrincipalName of the user. |
otherMails | String | The otherMails of the user. |
passwordPolicies | String | The passwordPolicies of the user. |
passwordProfile_forceChangePasswordNextSignIn | Bool | Indicate passwordProfile_forceChangePasswordNextSignIn for the user. |
passwordProfile_forceChangePasswordNextSignInWithMfa | Bool | Indicate passwordProfile_forceChangePasswordNextSignInWithMfa for the user. |
passwordProfile_password | String | The passwordProfile_password of the user. |
pastProjects | String | The pastProjects of the user. |
postalCode | String | The postalCode of the user. |
preferredLanguage | String | The preferredLanguage of the user. |
preferredName | String | The preferredName of the user. |
provisionedPlans | String | The provisionedPlans of the user. |
proxyAddresses | String | The proxyAddresses of the user. |
responsibilities | String | The responsibilities of the user. |
schools | String | The schools of the user. |
showInAddressList | Bool | Indicate showInAddressList of the user. |
signInSessionsValidFromDateTime | Datetime | The signInSessionsValidFromDateTime of the user. |
skills | String | The skills of the user. |
state | String | The state of the user. |
streetAddress | String | The streetAddress of the user. |
surname | String | The surname of the user. |
usageLocation | String | The usageLocation of the user. |
userPrincipalName | String | The userPrincipalName of the user. |
userType | String | The userType of the user. |
ParentReference | String | The ParentReference of the user. |
The Sync App maps types from the data source to the corresponding data type available in the schema. The table below documents these mappings.
Microsoft OneNote (OData V4) | CData Schema |
Edm.Binary | binary |
Edm.Boolean | bool |
Edm.Date | datetime |
Edm.DateTimeOffset | datetime |
Edm.Decimal | decimal |
Edm.Double | double |
Edm.Guid | guid |
Edm.Int32 | int |
Edm.String | string |
Edm.TimeOfDay | time |
プロパティ | 説明 |
AuthScheme | Microsoft OneNote に接続する際に使用する認証の種類。 |
プロパティ | 説明 |
AzureTenant | データにアクセスするために使用されるMicrosoft Online テナント。指定しない場合は、デフォルトのテナントが使用されます。 |
AzureEnvironment | 接続を確立するときに使用するAzure 環境。 |
プロパティ | 説明 |
OAuthClientId | OAuth 認証サーバーを使用してアプリケーションを登録する場合に割り当てられたクライアントId。 |
OAuthClientSecret | OAuth 認証サーバーにアプリケーションを登録する場合に割り当てられたクライアントシークレット。 |
OAuthGrantType | OAuth フローのグラント種別。 |
プロパティ | 説明 |
OAuthJWTCert | JWT 証明書のストア。 |
OAuthJWTCertType | JWT 証明書を格納するキーストアの種類。 |
OAuthJWTCertPassword | OAuth JWT 証明書のパスワード。 |
OAuthJWTCertSubject | OAuth JWT 証明書のサブジェクト。 |
OAuthJWTIssuer | Java Web Token の発行者。 |
OAuthJWTSubject | アプリケーションからデリゲートアクセスの要求対象となるユーザーサブジェクト。 |
プロパティ | 説明 |
SSLServerCert | TLS/SSL を使用して接続するときに、サーバーが受け入れ可能な証明書。 |
プロパティ | 説明 |
FirewallType | プロキシベースのファイアウォールで使われるプロトコル。 |
FirewallServer | プロキシベースのファイアウォールの名前もしくはIP アドレス。 |
FirewallPort | プロキシベースのファイアウォールのTCP ポート。 |
FirewallUser | プロキシベースのファイアウォールに認証するために使うユーザー名。 |
FirewallPassword | プロキシベースのファイアウォールへの認証に使われるパスワード。 |
プロパティ | 説明 |
ProxyAutoDetect | これは、システムプロキシ設定を使用するかどうかを示します。これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。 |
ProxyServer | HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。 |
ProxyPort | ProxyServer プロキシが起動しているTCP ポート。 |
ProxyAuthScheme | ProxyServer プロキシへの認証で使われる認証タイプ。 |
ProxyUser | ProxyServer プロキシへの認証に使われるユーザー名。 |
ProxyPassword | ProxyServer プロキシへの認証に使われるパスワード。 |
ProxySSLType | ProxyServer プロキシへの接続時に使用するSSL タイプ。 |
ProxyExceptions | ProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。 |
プロパティ | 説明 |
LogModules | ログファイルに含めるコアモジュール。 |
プロパティ | 説明 |
Location | テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。 |
BrowsableSchemas | このプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。 |
Tables | このプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。 |
Views | 使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。 |
プロパティ | 説明 |
GroupId | Specify this GroupId in order to access the OneNote documents for this group. |
MaxRows | クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。 |
Other | これらの隠しプロパティは特定のユースケースでのみ使用されます。 |
PseudoColumns | このプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。 |
Timeout | タイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。 |
UserDefinedViews | カスタムビューを含むJSON コンフィギュレーションファイルを指すファイルパス。 |
UserId | Specify this UserId in order to access the OneNote documents for this user. |
このセクションでは、本プロバイダーの接続文字列で設定可能なAuthentication プロパティの全リストを提供します。
プロパティ | 説明 |
AuthScheme | Microsoft OneNote に接続する際に使用する認証の種類。 |
Microsoft OneNote に接続する際に使用する認証の種類。
このセクションでは、本プロバイダーの接続文字列で設定可能なAzure Authentication プロパティの全リストを提供します。
プロパティ | 説明 |
AzureTenant | データにアクセスするために使用されるMicrosoft Online テナント。指定しない場合は、デフォルトのテナントが使用されます。 |
AzureEnvironment | 接続を確立するときに使用するAzure 環境。 |
データにアクセスするために使用されるMicrosoft Online テナント。指定しない場合は、デフォルトのテナントが使用されます。
データにアクセスするために使用されるMicrosoft Online テナント。例えば、contoso.onmicrosoft.com です。あるいは、 テナントId を指定します。この値は[Azure ポータル]->[Azure Active Directory]->[プロパティ]のディレクトリId です。
通常、Tenant を指定する必要はありません。OAuthGrantType をCODE(デフォルト)に設定している場合は、Microsoft が自動的に決定します。 ただし、ユーザーがマルチテナントに所属している場合は失敗する可能性があります。 例えば、ドメインA の管理者がドメインB のユーザーをゲストユーザーとして招待した場合。ユーザーは両方のテナントに属していることになります。 Tenant を指定するのはグッドプラクティスですが、一般的には指定しなくてもうまく動作するはずです。
OAuthGrantType をCLIENT に設定する場合は、AzureTenant が必須です。クライアント資格情報を使用する場合、ユーザーコンテキストはありません。 資格情報は、アプリ自体のコンテキストから取得されます。Microsoft ではTenant を指定せずにクライアント資格情報を取得することを許容していますが、使用する特定のテナントを選択する可能性ははるかに低くなっています。 このため、接続するドメインに適用される資格情報を確実に取得するために、すべてのクライアント資格情報接続に対してAzureTenant を明示的に指定する必要があります。
接続を確立するときに使用するAzure 環境。
ほとんどの場合、環境をグローバルに設定したままにしておくとうまく機能します。ただし、 Azure アカウントが別の環境に追加されている場合は、AzureEnvironment を使用してどの環境かを 指定できます。利用可能な値はGLOBAL、CHINA、USGOVT、USGOVTDOD です。
このセクションでは、本プロバイダーの接続文字列で設定可能なOAuth プロパティの全リストを提供します。
プロパティ | 説明 |
OAuthClientId | OAuth 認証サーバーを使用してアプリケーションを登録する場合に割り当てられたクライアントId。 |
OAuthClientSecret | OAuth 認証サーバーにアプリケーションを登録する場合に割り当てられたクライアントシークレット。 |
OAuthGrantType | OAuth フローのグラント種別。 |
OAuth 認証サーバーを使用してアプリケーションを登録する場合に割り当てられたクライアントId。
OAuth アプリケーションの登録の一環として、コンシューマキーとも呼ばれるOAuthClientId 値、およびクライアントシークレットOAuthClientSecret が提供されます。
OAuth 認証サーバーにアプリケーションを登録する場合に割り当てられたクライアントシークレット。
OAuth アプリケーションの登録の一環として、コンシューマキーとも呼ばれるOAuthClientId が提供されます。また、コンシューマーシークレットと呼ばれるクライアントシークレットも提供されます。クライアントシークレットをOAuthClientSecret プロパティに設定します。
OAuth フローのグラント種別。
次のオプションが利用可能です:CODE,CLIENT
このセクションでは、本プロバイダーの接続文字列で設定可能なJWT OAuth プロパティの全リストを提供します。
プロパティ | 説明 |
OAuthJWTCert | JWT 証明書のストア。 |
OAuthJWTCertType | JWT 証明書を格納するキーストアの種類。 |
OAuthJWTCertPassword | OAuth JWT 証明書のパスワード。 |
OAuthJWTCertSubject | OAuth JWT 証明書のサブジェクト。 |
OAuthJWTIssuer | Java Web Token の発行者。 |
OAuthJWTSubject | アプリケーションからデリゲートアクセスの要求対象となるユーザーサブジェクト。 |
JWT 証明書のストア。
クライアント証明書のための証明書ストア名。
OAuthJWTCertType フィールドは、OAuthJWTCert により指定された証明書ストアの種類を指定します。 ストアがパスワードで保護されている場合は、OAuthJWTCertPassword でパスワードを指定します。
OAuthJWTCert は、OAuthJWTCertSubject フィールドとともにクライアント証明書を指定するために使われます。 OAuthJWTCert に値がある場合で、OAuthJWTCertSubject が設定されている場合は、証明書の検索が始まります。 詳しくは、OAuthJWTCertSubject フィールドを参照してください。
証明書ストアの指定はプラットフォームに依存します。
Windows の共通のユーザとシステム証明書ストアの指定は以下のとおりです。
MY | 個人証明書と関連付けられた秘密キーを格納している証明書ストア。 |
CA | 証明機関の証明書。 |
ROOT | ルート証明書。 |
SPC | ソフトウェア発行元証明書。 |
Javaでは、証明書ストアは通常、証明書および任意の秘密キーを含むファイルです。
証明書ストアの種類がPFXFile の場合は、このプロパティにファイル名を設定します。 PFXBlob の場合は、このプロパティをPFX ファイルのバイナリコンテンツ(例えば、PKCS12証明書ストア)に設定する必要があります。
JWT 証明書を格納するキーストアの種類。
このプロパティには次の値の一つを設定できます。
USER | Windows の場合、現在のユーザーにより所有された証明書ストアであることを指定します。 Note:この種類はJava では利用できません。 |
MACHINE | Windows の場合、この証明書ストアがシステムストアであることを指定します。 Note:この種類はJava では利用できません。 |
PFXFILE | この証明書ストアは、証明書を含むPFX(PKCS12)ファイルの名前です。 |
PFXBLOB | この証明書ストアは、PFX(PKCS12)形式の証明書ストアを表すBase-64でエンコードされた文字列です。 |
JKSFILE | この証明書ストアは、証明書を含むJava key store(JKS)ファイルの名前です。 Note:この種類はJava のみで利用できます。 |
JKSBLOB | この証明書ストアは、Java key store(JKS)形式の証明書ストアを表すBase-64でエンコードされた文字列です。 Note:この種類はJava のみで利用できます。 |
PEMKEY_FILE | この証明書ストアは、秘密キーと任意の証明書を含むPEM でエンコードされたファイルの名前です。 |
PEMKEY_BLOB | この証明書ストアは、秘密キーと任意の証明書を含むBase-64でエンコードされた文字列です。 |
PUBLIC_KEY_FILE | この証明書ストアは、PEM またはDER でエンコードされた公開キーの証明書を含むファイルの名前です。 |
PUBLIC_KEY_BLOB | この証明書ストアは、PEM またはDER でエンコードされた公開キーの証明書を含むBase-64でエンコードされた文字列です。 |
SSHPUBLIC_KEY_FILE | この証明書ストアは、SSH 公開キーを含むファイルの名前です。 |
SSHPUBLIC_KEY_BLOB | この証明書ストアは、SSH 公開キーを含むBase-64でエンコードされた文字列です。 |
P7BFILE | この証明書ストアは、証明書を含むPKCS7 ファイルの名前です。 |
PPKFILE | この証明書ストアは、PuTTY 秘密キー(PPK)を含むファイルの名前です。 |
XMLFILE | この証明書ストアは、XML 形式の証明書を含むファイルの名前です。 |
XMLBLOB | この証明書ストアは、XML 形式の証明書を含む文字列の名前です。 |
OAuth JWT 証明書のパスワード。
証明書ストアでパスワードが必要である場合、このプロパティを使用してパスワードを指定し、証明書ストアにアクセスできます。
OAuth JWT 証明書のサブジェクト。
証明書のサブジェクトは、証明書をロードするときにストア内の証明書を検索するために使用されます。
完全に一致するものが見つからない場合、ストアはプロパティの値を含むサブジェクトを検索します。
それでも一致するものが見つからない場合、プロパティは空白で設定され、証明書は選択されません。
"*" に設定すると、証明書ストアの1番目の証明書が選択されます。
証明書のサブジェクトは識別の名前フィールドおよび値のカンマ区切りのリストです。 例えば、"CN=www.server.com, OU=test, C=US, [email protected]"。共通のフィールドとその説明は以下のとおりです。
フィールド | 説明 |
CN | 共通名。一般的には、www.server.com のようなホスト名です。 |
O | 法人名 |
OU | 法人の部署名 |
L | 法人の住所(市町村名) |
S | 法人の住所(都道府県) |
C | 国名 |
E | Eメールアドレス |
フィールド値にカンマが含まれている場合は、それを引用符で囲む必要があります。
Java Web Token の発行者。
Java Web Token の発行者。通常は、OAuth アプリケーションのクライアントId またはE メールアドレスとなります。
アプリケーションからデリゲートアクセスの要求対象となるユーザーサブジェクト。
アプリケーションからデリゲートアクセスの要求対象となるユーザーサブジェクトです。通常は、ユーザーのアカウント名またはE メールアドレスとなります。
このセクションでは、本プロバイダーの接続文字列で設定可能なSSL プロパティの全リストを提供します。
プロパティ | 説明 |
SSLServerCert | TLS/SSL を使用して接続するときに、サーバーが受け入れ可能な証明書。 |
TLS/SSL を使用して接続するときに、サーバーが受け入れ可能な証明書。
TLS/SSL 接続を使用する場合は、このプロパティを使用して、サーバーが受け入れるTLS/SSL 証明書を指定できます。コンピュータによって信頼されていない他の証明書はすべて拒否されます。
このプロパティは、次のフォームを取ります:
説明 | 例 |
フルPEM 証明書(例では省略されています) | -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE----- |
証明書を保有するローカルファイルへのパス。 | C:\cert.cer |
公開鍵(例では省略されています) | -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY----- |
MD5 Thumbprint (hex 値はスペースおよびコロン区切り) | ecadbdda5a1529c58a1e9e09828d70e4 |
SHA1 Thumbprint (hex 値はスペースおよびコロン区切り) | 34a929226ae0819f2ec14b4a3d904f801cbb150d |
これを指定しない場合は、マシンが信用するすべての証明書が受け入れられます。
すべての証明書の受け入れを示すには、'*'を使用します。セキュリティ上の理由から、これはお勧めできません。
このセクションでは、本プロバイダーの接続文字列で設定可能なFirewall プロパティの全リストを提供します。
プロパティ | 説明 |
FirewallType | プロキシベースのファイアウォールで使われるプロトコル。 |
FirewallServer | プロキシベースのファイアウォールの名前もしくはIP アドレス。 |
FirewallPort | プロキシベースのファイアウォールのTCP ポート。 |
FirewallUser | プロキシベースのファイアウォールに認証するために使うユーザー名。 |
FirewallPassword | プロキシベースのファイアウォールへの認証に使われるパスワード。 |
プロキシベースのファイアウォールで使われるプロトコル。
このプロパティは、Sync App がFirewallServer プロキシ経由でトンネルトラフィックを使うためのプロトコルを指定します。デフォルトでは、Sync App はシステムプロキシに接続します。この動作を無効化し次のプロキシタイプのどれかで接続するには、ProxyAutoDetect をfalse に設定します。
タイプ | デフォルトポート | 説明 |
TUNNEL | 80 | これが設定されている場合、Sync App はMicrosoft OneNote への接続を開き、プロキシを経由して通信が行われます。 |
SOCKS4 | 1080 | これが設定されている場合、Sync App はデータをFirewallServer およびFirewallPort で指定されたSOCS 4 プロキシ経由で送信し、接続リクエストが許容されるかどうかを決定します。 |
SOCKS5 | 1080 | これが設定されている場合、Sync App はデータをFirewallServer およびFirewallPort で指定されたSOCS 5 プロキシ経由で送信します。プロキシに認証が必要な場合には、FirewallUser およびFirewallPassword をプロキシが認識する認証情報に設定します。 |
HTTP プロキシへの接続には、ProxyServer およびProxyPort ポートを使ってください。HTTP プロキシへの認証には、ProxyAuthScheme、ProxyUser、およびProxyPassword を使ってください。
プロキシベースのファイアウォールの名前もしくはIP アドレス。
ファイアウォールトラバーサルを許容するために設定するIP アドレス、DNS 名、もしくはプロキシホスト名を指定するプロパティです。プロトコルはFirewallType で指定されます。このプロパティとFirewallServer を使って、SOCKS 経由での接続、もしくはトンネリングが可能です。HTTP プロキシへの接続には、ProxyServer を使用します。
Sync App はデフォルトでシステムプロキシを使うので注意してください。他のプロキシを使う場合には、ProxyAutoDetect をfalse に設定してください。
プロキシベースのファイアウォールのTCP ポート。
ファイアウォールトラバーサルを許容するために設定するプロキシベースのファイアウォールのTCP ポート。名前もしくはIP アドレスを指定するには、FirewallServer を使います。FirewallType でプロトコルを指定します。
プロキシベースのファイアウォールに認証するために使うユーザー名。
FirewallUser およびFirewallPassword プロパティは、FirewallType により指定された認証方式に則り、FirewallServer、およびFirewallPort で指定されたプロキシに対しての認証に使われます。
プロキシベースのファイアウォールへの認証に使われるパスワード。
このプロパティは、FirewallType により指定された認証メソッドに則り、FirewallServer およびFirewallPort で指定されたプロキシに渡されます。
このセクションでは、本プロバイダーの接続文字列で設定可能なProxy プロパティの全リストを提供します。
プロパティ | 説明 |
ProxyAutoDetect | これは、システムプロキシ設定を使用するかどうかを示します。これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。 |
ProxyServer | HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。 |
ProxyPort | ProxyServer プロキシが起動しているTCP ポート。 |
ProxyAuthScheme | ProxyServer プロキシへの認証で使われる認証タイプ。 |
ProxyUser | ProxyServer プロキシへの認証に使われるユーザー名。 |
ProxyPassword | ProxyServer プロキシへの認証に使われるパスワード。 |
ProxySSLType | ProxyServer プロキシへの接続時に使用するSSL タイプ。 |
ProxyExceptions | ProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。 |
これは、システムプロキシ設定を使用するかどうかを示します。これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。
これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。
HTTP プロキシへの接続には、ProxyServer を参照してください。SOCKS やトンネリングなどの他のプロキシには、FirewallType を参照してください。
HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。
HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。HTTP プロキシへの認証には、Sync App はHTTP、Windows(NTLM)、もしくはKerberos 認証タイプを使用することができます。
SOCKS プロキシを経由して接続する、もしくは接続をトンネルするには、FirewallType を参照してください。
デフォルトで、Sync App はsystem プロキシを使います。他のプロキシを使う場合には、ProxyAutoDetect をfalse に設定します。
ProxyServer プロキシが起動しているTCP ポート。
HTTP トラフィックをリダイレクトするHTTP プロキシが実行されているポート。ProxyServer でHTTP プロキシを指定します。その他のプロキシタイプについては、FirewallType を参照してください。
ProxyServer プロキシへの認証で使われる認証タイプ。
この値は、ProxyServer およびProxyPort で指定されるHTTP プロキシに認証するために使われる認証タイプを指定します。
Sync App は、デフォルトでsystem proxy settings を使い、追加での設定が不要です。他のプロキシへの接続をする場合には、ProxyServer およびProxyPort に加え、ProxyAutoDetect をfalse に設定します。認証するには、ProxyAuthScheme を設定し、必要な場合にはProxyUser およびProxyPassword を設定します。
認証タイプは、次のどれかになります。
SOCKS 5 認証のような他の認証タイプを使用するには、FirewallType を参照してください。
ProxyServer プロキシへの認証に使われるユーザー名。
ProxyUser および ProxyPassword オプションは、ProxyServer で指定されたHTTP プロキシに対して接続および認証するために使用されます。
ProxyAuthScheme で使用可能な認証タイプを選択することができます。HTTP 認証を使う場合、これをHTTP プロキシで識別可能なユーザーのユーザー名に設定します。Windows もしくはKerberos 認証を使用する場合、このプロパティを次の形式のどれかでユーザー名に設定します。
user@domain domain\user
ProxyServer プロキシへの認証に使われるパスワード。
このプロパティは、NTLM(Windows)、Kerberos、もしくはHTTP 認証をサポートするHTTP プロキシサーバーに認証するために使われます。HTTP プロキシを指定するためには、ProxyServer およびProxyPort を設定します。認証タイプを指定するためにはProxyAuthScheme を設定します。
HTTP 認証を使う場合、さらにHTTP プロキシにProxyUser およびProxyPassword を設定します。
NTLM 認証を使う場合、Windows パスワードにProxyUser およびProxyPassword を設定します。Kerberos 認証には、これらを入力する必要があります。
SOCKS 5 認証もしくは、トンネリングは、FirewallType を参照してください。
デフォルトで、Sync App はsystem プロキシを使います。他のプロキシに接続する場合には、これをfalse に設定します。
ProxyServer プロキシへの接続時に使用するSSL タイプ。
このプロパティは、ProxyServer で指定されたHTTP プロキシへの接続にSSL を使用するかどうかを決定します。この値は、AUTO、ALWAYS、NEVER、TUNNEL のいずれかです。有効な値は次のとおりです。
AUTO | デフォルト設定。URL がHTTPS URL の場合、Sync App は、TUNNEL オプションを使います。URL がHTTP URL の場合、コンポーネントはNEVER オプションを使います。 |
ALWAYS | 接続は、常にSSL 有効となります。 |
NEVER | 接続は、SSL 有効になりません。 |
TUNNEL | 接続は、トンネリングプロキシを経由します。プロキシサーバーがリモートホストへの接続を開き、プロキシを経由して通信が行われます。 |
ProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。
ProxyServer は、このプロパティで定義されたアドレスを除くすべてのアドレスに使用されます。セミコロンを使用してエントリを区切ります。
Sync App は、追加設定なしにデフォルトでシステムのプロキシ設定を使います。この接続のプロキシ例外を明示的に構成するには、ProxyAutoDetect をfalse に設定して、ProxyServer およびProxyPort を設定する必要があります。認証するには、ProxyAuthScheme を設定し、必要な場合にはProxyUser およびProxyPassword を設定します。
ログファイルに含めるコアモジュール。
指定された(';' で区切られた)モジュールのみがログファイルに含まれます。デフォルトではすべてのモジュールが含まれます。
概要はログ ページを参照してください。
このセクションでは、本プロバイダーの接続文字列で設定可能なSchema プロパティの全リストを提供します。
プロパティ | 説明 |
Location | テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。 |
BrowsableSchemas | このプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。 |
Tables | このプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。 |
Views | 使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。 |
テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。
Sync App のスキーマファイル(テーブルとビューの場合は.rsd ファイル、ストアドプロシージャの場合は.rsb ファイル)を含むディレクトリへのパス。このフォルダの場所は、実行ファイルの場所からの相対パスにすることができます。Location プロパティは、定義をカスタマイズしたり(例えば、カラム名を変更する、カラムを無視するなど)、新しいテーブル、ビュー、またはストアドプロシージャでデータモデルを拡張する場合にのみ必要です。
指定しない場合、デフォルトの場所は"%APPDATA%\\CData\\OneNote Data Provider\\Schema" となり、%APPDATA% はユーザーのコンフィギュレーションディレクトリに設定されます:
このプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。
スキーマをデータベースからリストすると、負荷がかかる可能性があります。接続文字列でスキーマのリストを提供すると、 パフォーマンスが向上します。
このプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。
テーブルを複数のデータベースからリストすると、負荷がかかる可能性があります。接続文字列でテーブルのリストを提供すると、Sync App のパフォーマンスが向上します。
このプロパティは、作業したいビューがすでにわかっていて、ビューが多すぎる場合に、ビューを自動的にリストする代わりに使用することもできます。
カンマ区切りのリストで使用したいテーブルを指定します。各テーブルは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space` です。
複数のスキーマまたはカタログを持つデータソースに接続する場合は、複数のカタログやスキーマに存在するテーブル間の曖昧さを避けるため、最後の例のように、このプロパティにテーブルの完全修飾名を指定する必要があることに注意してください。
使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。
ビューを複数のデータベースからリストすると、負荷がかかる可能性があります。接続文字列でビューのリストを提供すると、Sync App のパフォーマンスが向上します。
このプロパティは、作業したいビューがすでにわかっていて、ビューが多すぎる場合に、ビューを自動的にリストする代わりに使用することもできます。
カンマ区切りのリストで使用したいビューを指定します。各ビューは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space` です。
複数のスキーマまたはカタログを持つデータソースに接続する場合は、複数のカタログやスキーマに存在するテーブル間の曖昧さを避けるため、最後の例のように、このプロパティにテーブルの完全修飾名を指定する必要があることに注意してください。
このセクションでは、本プロバイダーの接続文字列で設定可能なMiscellaneous プロパティの全リストを提供します。
プロパティ | 説明 |
GroupId | Specify this GroupId in order to access the OneNote documents for this group. |
MaxRows | クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。 |
Other | これらの隠しプロパティは特定のユースケースでのみ使用されます。 |
PseudoColumns | このプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。 |
Timeout | タイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。 |
UserDefinedViews | カスタムビューを含むJSON コンフィギュレーションファイルを指すファイルパス。 |
UserId | Specify this UserId in order to access the OneNote documents for this user. |
Specify this GroupId in order to access the OneNote documents for this group.
Specify this GroupId in order to access the OneNote documents for this group.
クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。
クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。
これらの隠しプロパティは特定のユースケースでのみ使用されます。
以下にリストされているプロパティは、特定のユースケースで使用可能です。通常のドライバーのユースケースおよび機能では、これらのプロパティは必要ありません。
複数のプロパティをセミコロン区切りリストで指定します。
DefaultColumnSize | データソースがメタデータにカラムの長さを提供しない場合に、文字列フィールドのデフォルトの長さを設定します。デフォルト値は2000です。 |
ConvertDateTimeToGMT | 日時の値を、マシンのローカルタイムではなくGMT グリニッジ標準時に変換するかどうかを決定します。 |
RecordToFile=filename | 基底のソケットデータ転送を指定のファイルに記録します。 |
このプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。
Entity Framework ではテーブルカラムでない疑似カラムに値を設定できないため、この設定はEntity Framework で特に便利です。この接続設定の値は、"Table1=Column1, Table1=Column2, Table2=Column3" の形式です。"*=*" のように"*" 文字を使用して、すべてのテーブルとすべてのカラムを含めることができます。
タイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。
Timeout が0に設定されている場合は、操作がタイムアウトしません。処理が正常に完了するか、エラー状態になるまで実行されます。
Timeout の有効期限が切れても処理が完了していない場合は、Sync App は例外をスローします。
カスタムビューを含むJSON コンフィギュレーションファイルを指すファイルパス。
ユーザー定義ビューは、UserDefinedViews.json というJSON 形式のコンフィギュレーションファイルで定義されています。Sync App は、このファイルで指定されたビューを自動的に検出します。
また、複数のビュー定義を持ち、UserDefinedViews 接続プロパティを使用して制御することも可能です。このプロパティを使用すると、指定されたビューのみがSync App によって検知されます。
このユーザー定義ビューのコンフィギュレーションファイルは、次のようにフォーマットされています。
次に例を示します。
{ "MyView": { "query": "SELECT * FROM Notebooks WHERE MyColumn = 'value'" }, "MyView2": { "query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)" } }UserDefinedViews 接続プロパティを使用して、JSON コンフィギュレーションファイルの場所を指定します。次に例を示します。
"UserDefinedViews", "C:\\Users\\yourusername\\Desktop\\tmp\\UserDefinedViews.json"
Specify this UserId in order to access the OneNote documents for this user.
Specify this UserId in order to access the OneNote documents for this user.