CData Sync App は、Box データをデータベース、データレイク、またはデータウェアハウスに継続的にパイプライン化する簡単な方法を提供し、分析、レポート、AI、および機械学習で簡単に利用できるようにします。
Box コネクタはCData Sync アプリケーションから使用可能で、Box からデータを取得して、サポートされている任意の同期先に移動できます。
Sync App はBox Content API をリレーショナルデータベースにモデル化し、標準SQLでのクエリを可能にします。
必須プロパティについては、設定タブを参照してください。
通常必須ではない接続プロパティについては、高度な設定タブを参照してください。
Sync App は、Box テーブルおよびフォルダへのアクセスを実現します。なお、Sync App はBox に格納されているファイルの内容を更新したり、ファイルの内容をテーブルやカラムとしてモデル化したりはできません。
Box は埋め込みOAuth クレデンシャルを提供しており、デスクトップアプリケーション からの接続を簡単にします。Web アプリケーションから接続するには、カスタムOAuth アプリケーションの作成 で説明するようにカスタムOAuth アプリケーションを作成する必要があります。
以下のサブセクションでは、利用可能なOAuth フローでのBox への認証について詳しく説明します。 カスタムOAuth アプリケーションの作成についての情報と、すでに埋め込みOAuth 認証情報を持つ認証フローでもカスタムOAuth アプリケーションを作成したほうがよい場合の説明については、カスタムOAuth アプリケーションの作成 を参照してください。
Box で利用可能な接続文字列プロパティの全リストは、Connection を参照してください。
サービスアカウントを使用するには、カスタムOAuth アプリケーションの作成 で説明するように、カスタムOAuth アプリケーションの作成と認可が必要です。 これでサービスアカウントにアクセス権があるBox データに接続できます。
次の接続プロパティを設定して、接続してください。
接続すると、Sync App はサービスアカウントでのOAuth フローを完了します。
システム内のファイルを使用するのが難しい場合は、JSON ファイルの内容を接続文字列に直接コピーすることができます。 次のプロパティを設定します。
このセクションでは、Box Sync App の高度な機能を厳選して説明します。
Sync App はユーザー定義ビューの使用をサポートします。これは事前設定されたユーザー定義クエリによって内容が決定される仮想テーブルです。 このビューは、ドライバーに発行されるクエリを直接制御できない場合に有効です。 カスタムビューの作成と設定の概要については、ユーザー定義ビュー を参照してください。
SSL の設定 を使用して、Sync App が証明書のネゴシエーションをどのように扱うかを調整します。さまざまな証明書形式を選択できます。詳しくは、「接続文字列オプション」にあるSSLServerCert プロパティを参照してください。
Windows プロキシとHTTP プロキシを含むファイアウォールとプロキシ に合致するようSync App を設定します。トンネル接続を設定することもできます。
詳しくは、クエリ処理 を参照してください。
デフォルトでは、Sync App はサーバーとのTLS のネゴシエーションを試みます。サーバー証明書は、デフォルトのシステム信頼済み証明書ストアで検証されます。SSLServerCert 接続プロパティを使用して、証明書の検証方法をオーバーライドできます。
別の証明書を指定するには、SSLServerCert 接続プロパティを参照してください。
HTTP プロキシへの認証には、以下のように設定します。
次のプロパティを設定します。
Sync App は、Box テーブルやフォルダ、およびUsers、Tasks、Groups などの関連エンティティのメタデータへのアクセスを実現します。
テーブル は、FileVersions やUserEvents などのBox エンティティをモデル化する読み取り専用のテーブルです。
ストアドプロシージャ は、Box のファンクションライクなインターフェースです。ファイルのダウンロード、アップロード、コピーなどのタスクを実行するために使用できます。
ExposeCollectionViews を使用して、Box コレクションを個別のビューとして公開し、そのファイルやフォルダのメタデータ情報をクエリできます。生成されるビューの名前には、"Collection_" という接頭辞が付きます。さらに、AsUserId を使用して特定のユーザーのコレクションのみを公開したり、IncludeCustomFields を使用してカスタムメタデータフィールドをこれらのビューのカラムとして公開することができます。
Sync App はBox のデータを、標準のSQL ステートメントを使用してクエリできるリレーショナルデータベースのテーブルのリストとしてモデル化します。
| Name | Description |
| Bookmarks | Query, insert, update and delete the available bookmarks in Box. |
| Collaborations | Create, update, delete, and query the available Collaborations in Box. |
| Comments | Create, update, delete, and query the available Comments in Box. |
| Folders | Create, update, delete, and query the available Folders in Box. |
| Groups | Create, update, delete, and query the available Groups in Box. |
| LegalPolicies | Query all legal hold policies that belong to an enterprise. |
| Memberships | Create, update, delete, and query the available Memberships in Box. |
| MetadataTemplates | Create, update, delete and query the Metadata Templates in Box |
| TaskAssignments | Create, update, delete, and query the available Task Assignments in Box. |
| Tasks | Create, update, delete, and query the available Tasks in Box. |
| TrashedItems | Delete and query the available TrashedItems in Box. |
| Users | Create, update, delete, and query the available Users in Box. |
Query, insert, update and delete the available bookmarks in Box.
If you search for bookmarks without specifying any condition in the WHERE Clause, by default only the bookmarks that are at most 5 levels deep from the root folder will be returned. You can change the default depth value in the connection string; e.g. DirectoryRetrievalDepth=10.
SELECT * FROM Bookmarks
By default, the search starts from the root directory, identified as directory '0'. To customize the starting directory for your search, specify its ID using the SearchRootId column.
SELECT * FROM Bookmarks WHERE SearchRootId = '293533136411'
Retrieve a bookmark by specifying the Id:
SELECT * FROM Bookmarks WHERE Id = '8397822180'
To search all the bookmarks in your enterprise, query the bookmarks table with the column SearchTerms.
SELECT * FROM Bookmarks WHERE SearchTerms LIKE '%CData%' AND OwnerUserIds = '311997108,1'
To search all the bookmarks within a specific folder, query the bookmarks table with the ParentId column.
SELECT * FROM Bookmarks WHERE ParentId = 62297447480
Note: When using a ParentId filter, avoid specifying a SearchRootId simultaneously. If both are used, the search will recursively start from the specified SearchRootId instead of the ParentId, which may result in slower performance.
If you're authenticated as an administrator with user impersonation permissions, you can query bookmarks from multiple user accounts:
SELECT * FROM Bookmarks WHERE AsUserId IN (SELECT Id FROM Users)
Note: User impersonation has the following limitations:
To insert a bookmark you must specify at least the URL and ParentId column.
INSERT INTO Bookmarks (Url, Name, Description, ParentId) VALUES ('https://www.cdata.com/', 'CData', 'Visit CData!', 0)
Any column where ReadOnly=False can be updated.
UPDATE Bookmarks SET Name = 'CData Updated Bookmark', ParentId = 62297447480 WHERE Id = 8397822180
Bookmarks can be deleted by providing an Id and issuing a DELETE statement. This bookmark is then moved to TrashedItems.
DELETE FROM Bookmarks WHERE Id = 8397822180
| Name | Type | ReadOnly | Description |
| Id [KEY] | String | True |
The Id of the bookmark. |
| Url | String | False |
The URL of the bookmark. |
| Name | String | False |
The name of the bookmark. |
| Description | String | False |
The description of the bookmark. |
| ParentId | String | False |
The Id of the folder that contains the bookmark. |
| CreatedAt | Datetime | True |
The date the content of the bookmark was created at. |
| CreatedById | String | True |
The Id of the user that created the bookmark. |
| CreatedByName | String | True |
The Name of the user that created the bookmark. |
| CreatedByLogin | String | True |
The Login of the user that created the bookmark. |
| ModifiedAt | Datetime | True |
The date the content of the bookmark was modified at. |
| ModifiedById | String | True |
The Id of the user that last modified the bookmark. |
| ModifiedByName | String | True |
The Name of the user that last modified the bookmark. |
| ModifiedByLogin | String | True |
The Login of the user that last modified the bookmark. |
| OwnedById | String | True |
The Id of the user that owns the bookmark. |
| OwnedByName | String | True |
The Name of the user that owns the bookmark. |
| OwnedByLogin | String | True |
The Login of the user that owns the bookmark. |
| Etag | String | True |
The Etag of the bookmark |
| SequenceId | String | True |
The sequence Id of the bookmark. |
| SharedLink | String | True |
The shared url of the bookmark. |
| ItemStatus | String | True |
The status of the bookmark. |
| Path | String | True |
The full path of the bookmark. |
| AsUserId | String | False |
The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
| SearchRootId | String | True |
The folder Id to start the recursive search through the folder tree. Default is '0' as root folder. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
| Name | Type | Description |
| SearchTerms | String |
Query to search the bookmarks database. |
| Scope | String |
The scope of the search. 使用できる値は次のとおりです。user_content, enterprise_content |
| OwnerUserIDs | String |
The Ids of the owners to limit the search to, separated by a comma. |
| AncestorFolderIDs | String |
The Ids of the folders to limit the search to, separated by a comma. |
Create, update, delete, and query the available Collaborations in Box.
Collaborations はFolders およびGroups の間のコネクションであり、一つのGroup は特定のCollaboration とコラボレートできます。
Collaborations テーブルをクエリするには、Id、FolderId、もしくはGroupId を指定します。
SELECT * FROM Collaborations WHERE Id = '123'
If you're authenticated as an administrator with user impersonation permissions, you can query collaborations from multiple user accounts:
SELECT * FROM Collaborations WHERE AsUserId IN (SELECT Id FROM Users)
Note: User impersonation has the following limitations:
Collaborations に挿入するには、Folder にGroup もしくはUser を紐付けてRole を割り当てます。
INSERT INTO Collaborations (Role, ItemId, ItemType, AccessibleById, AccessibleByType) VALUES ('admin', '1', 'folder', '2', 'user')
Collaboration では、Role およびStatus だけが更新可能です。
UPDATE Collaborations SET Role = 'viewer', Status = 'accepted' WHERE Id = '100'
Collaborations は、Id を指定してDELETE ステートメントを発行することで削除できます。
DELETE FROM Collaborations WHERE Id = '100'
| Name | Type | ReadOnly | Description |
| Id [KEY] | String | True |
The Id of the collaboration. |
| CreatedAt | Datetime | True |
The date the collaboration was created at. |
| ModifiedAt | Datetime | True |
The date the collaboration was modified at. |
| AcknowledgedAt | Datetime | True |
The date the collaboration was acknowledged. |
| CreatedById | String | True |
The Id of the user that created the collaboration. |
| Status | String | False |
The status of the collaboration. |
| Role | String | False |
The role of the user or group of the collaborator. Allowed values are editor, viewer, previewer, uploader, previewer uploader, viewer uploader, co-owner, or owner |
| ItemId | String | False |
The Id of the item the collaboration is related to. |
| ItemType | String | False |
The type of the item the collaboration is related to. |
| AccessibleById | String | False |
The Id of the group/user that can access this collaboration. |
| AccessibleByType | String | False |
The type of the entity of Accessible_By_Id. 使用できる値は次のとおりです。group, user |
| AccessibleByLogin | String | False |
The login of the the Accessible_By_Id. |
| AsUserId | String | False |
The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
| Name | Type | Description |
| FolderId | String |
The Id of the folder the collaboration is related to. |
| GroupId | String |
The Id of the group the collaboration is related to. |
Create, update, delete, and query the available Comments in Box.
Comments はFile に付けられた追加情報です。これらのComments は子Comments を持つことができます。
Comments テーブルをクエリするには、Id、もしくはFileId を指定します。
SELECT * FROM Comments WHERE Id = '123'
If you're authenticated as an administrator with user impersonation permissions, you can query comments from multiple user accounts:
SELECT * FROM Comments WHERE AsUserId IN (SELECT Id FROM Users)
Note: User impersonation has the following limitations:
Comments への挿入には、Comments を挿入するアイテム、およびMessage を指定する必要があります。Message、もしくはTaggedMessage のどちらか片方を指定します。
INSERT INTO Comments (ItemId, ItemType, Message) VALUES ('1', 'file', 'example comment')
Comment のメッセージだけが更新できます。
UPDATE Comments SET Message = 'editor' WHERE Id = '100'
Comments は、Id を指定してDELETE ステートメントを発行することで削除できます。
DELETE FROM Comments WHERE Id = '100'
| Name | Type | ReadOnly | Description |
| Id [KEY] | String | True |
The Id of the comment. |
| Message | String | False |
The plain message of the comment. Use only this or tagged_message not both. |
| TaggedMessage | String | False |
The tagged message of the comment. Setting this as @[USER_ID:USERNAME] tags the user and notifies him. A tagged message that does not contain a proper tag will give an error. |
| ItemId | String | False |
The Id of the item the comment is targeted to. |
| ItemType | String | False |
The type of the item the comment is targeted to. This can be a file or another comment. 使用できる値は次のとおりです。file, comment |
| CreatedById | String | True |
The id of the user that created the item. |
| CreatedByName | String | True |
The name of the user that created the item. |
| CreatedByLogin | String | True |
The login user that created the item. |
| CreatedAt | Datetime | True |
The date the item was created. |
| AsUserId | String | False |
The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
| Name | Type | Description |
| FileID | String |
The File ID the comment is connected to, is not used to insert to this table. |
Update, delete, and query the available Files in Box.
If you search for files without specifying any condition in the WHERE Clause, by default only the files that are at most 5 levels deep from the root folder will be returned. You can change the default depth value in the connection string; e.g. DirectoryRetrievalDepth=10.
SELECT * FROM Files
By default, the search starts from the root directory, identified as directory '0'. To customize the starting directory for your search, specify its ID using the SearchRootId column.
SELECT * FROM Files WHERE SearchRootId = '293533136411'
To search all the Files in your enterprise, query the Files table with the column SearchTerms.
SELECT * FROM Files WHERE SearchTerms LIKE '%untitled%'
To search all the Files within a specific folder, query the Files table with a filter on the relevant folder's Id in the ParentId column.
SELECT * FROM Files WHERE ParentId = '12'
Note: When using a ParentId filter, avoid specifying a SearchRootId simultaneously. If both are used, the search will recursively start from the specified SearchRootId instead of the ParentId, which may result in slower performance.
Any column where ReadOnly=False can be updated.
UPDATE Files SET Description = 'example description', Sharedlink = 'http://sharedlink.com', OwnedbyId = '321', ParentId = '12', Name = 'updated file name' WHERE Id = '123'
Files can be deleted by providing an Id and issuing a DELETE statement. This file is then moved to TrashedItems
DELETE FROM Files WHERE Id = '100'
| Name | Type | ReadOnly | Description |
| SearchTerms | String | True |
Query to search the files database. |
| Id [KEY] | String | True |
The Id of the file. |
| Name | String | False |
The name of the file. |
| Sha1 | String | False |
The SHA-1 encryption of the file. |
| Etag | String | False |
The Etag of the file |
| SequenceId | String | False |
The sequence Id of the file. |
| Description | String | False |
The description of the file. |
| Size | Integer | True |
The size of the file. |
| CreatedAt | Datetime | True |
The date the file was created at. |
| ModifiedAt | Datetime | True |
The date the file was modified at. |
| TrashedAt | Datetime | True |
The date the file was trashed at. |
| PurgedAt | Datetime | True |
The date the file was purged at. |
| ContentCreatedAt | Datetime | True |
The date the content of the file was created at. |
| ContentModifiedAt | Datetime | True |
The date the content of the file was modified at. |
| CreatedById | String | True |
The Id of the user that created the file. |
| CreatedByName | String | True |
The Name of the user that created the file. |
| CreatedByLogin | String | True |
The Login of the user that created the file. |
| SharedLink | String | False |
The shared url of the file. |
| ModifiedById | String | True |
The Id of the user that last modified the file. |
| ModifiedByName | String | True |
The Name of the user that last modified the file. |
| ModifiedByLogin | String | True |
The Login of the user that last modified the file. |
| OwnedById | String | False |
The Id of the user that owns the file. |
| OwnedByName | String | False |
The Name of the user that owns the file. |
| OwnedByLogin | String | False |
The Login of the user that owns the file. |
| ParentId | String | False |
The Id of the folder that contains the file. |
| ItemStatus | String | False |
The status of the file. |
| Path | String | True |
The full path of the file. |
| SearchRootId | String | True |
The folder Id to start the recursive search through the folder tree. Default is '0' as root folder. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
| Name | Type | Description |
| Scope | String |
The scope of the search. |
| FileExtension | String |
The extension of the file. |
| ContentTypes | String |
The content to search the query at, separated by commas. This can contain a mixture of the following: name, file_content, description, comments, tags. |
| OwnerUserIDs | String |
The Ids of the owners to limit the search to, separated by a comma. |
| AncestorfolderIDs | String |
The Ids of the folders to limit the search to, separated by a comma. |
| AsUserId | String |
The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
Create, update, delete, and query the available Folders in Box.
If you search for folders without specifying any condition in the WHERE Clause, by default only the folders that are at most 5 levels deep from the root folder will be returned. You can change the default depth value in the connection string; e.g. DirectoryRetrievalDepth=10.
SELECT * FROM Folders
By default, the search starts from the root directory, identified as directory '0'. To customize the starting directory for your search, specify its ID using the SearchRootId column.
SELECT * FROM Folders WHERE SearchRootId = '293533136411'
To search all the Folders in your enterprise, query the Folders table with the column SearchTerms.
SELECT * FROM Folders WHERE SearchTerms LIKE '%untitled%'
To search all the Folders within a specific folder, query the Folders table with the ParentId column.
SELECT * FROM Folders WHERE ParentId = '12'
Note: When using a ParentId filter, avoid specifying a SearchRootId simultaneously. If both are used, the search will recursively start from the specified SearchRootId instead of the ParentId, which may result in slower performance.
If you're authenticated as an administrator with user impersonation permissions, you can query folders from multiple user accounts:
SELECT * FROM Folders WHERE AsUserId IN (SELECT Id FROM Users)
Note: User impersonation has the following limitations:
You're required to specify the name of the Folder and also the Id of the parent Folder. Use 0 for the root Folder's ParentId.
INSERT INTO Folders (Name, ParentId, SharedLink, Description, Access, OwnedById) VALUES ('new folder', '0', 'http://sharedlink.com', 'example desc', 'open', '123')
Any column where ReadOnly=False can be updated.
UPDATE Folders SET Description = 'example description', Access = 'open', SharedLink = 'http://sharedlink.com', OwnedById = '321', ParentId = '12', Name = 'no longer new folder' WHERE Id = '123'
Folders can be deleted by providing an Id and issuing a DELETE statement.
DELETE FROM Folders WHERE Id = '123'
| Name | Type | ReadOnly | Description |
| SearchTerms | String | True |
Query to search the folders database. |
| Id [KEY] | String | True |
The Id of the folder. |
| Name | String | False |
The name of the folder. |
| Etag | String | True |
The Etag of the folder |
| SequenceId | String | False |
The sequence Id of the folder. |
| Description | String | False |
The description of the folder. |
| Access | String | False |
The email access of this folder to. 使用できる値は次のとおりです。open, collaborators |
| Size | Integer | True |
The size of the file. |
| CreatedAt | Datetime | True |
The date the file was created at. |
| ModifiedAt | Datetime | True |
The date the file was modified at. |
| TrashedAt | Datetime | True |
The date the folder was trashed at. |
| PurgedAt | Datetime | True |
The date the folder was purged at. |
| ContentCreatedAt | Datetime | True |
The date the content of the folder was created at. |
| ContentModifiedAt | Datetime | True |
The date the content of the folder was modified at. |
| CreatedBy | String | True |
The Id of the user that created the folder. |
| CreatedByName | String | True |
The Name of the user that created the folder. |
| CreatedByLogin | String | True |
The Login of the user that created the folder. |
| SharedLink | String | False |
The Id of the user that created the folder. |
| ModifiedBy | String | True |
The Id of the user that last modified the folder. |
| ModifiedByName | String | True |
The Name of the user that last modified the folder. |
| ModifiedByLogin | String | True |
The Login of the user that last modified the folder. |
| OwnedById | String | False |
The Id user that owns the folder. |
| OwnedByName | String | True |
The Name of the user that owns the folder. |
| OwnedByLogin | String | True |
The Login of the user that owns the folder. |
| ParentId | String | False |
The Id of the folder that contains the folder. |
| ItemStatus | String | True |
The status of the folder. |
| Path | String | True |
The full path of the folder. |
| AsUserId | String | False |
The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
| SearchRootId | String | True |
The folder Id to start the recursive search through the folder tree. Default is '0' as root folder. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
| Name | Type | Description |
| Scope | String |
The scope of the search. |
| ContentTypes | String |
The content to search the query at, separated by commas. This can contain a mixture of the following: name, file_content, description, comments, tags. |
| OwnerUserIDs | String |
The Ids of the owners to limit the search to, separated by a comma. |
| AncestorfolderIDs | String |
The Ids of the folders to limit the search to, separated by a comma. |
Create, update, delete, and query the available Groups in Box.
すべてのGroup の取得、またはId でのフィルタが可能です。
SELECT * FROM Groups
If you're authenticated as an administrator with user impersonation permissions, you can query groups from multiple user accounts:
SELECT * FROM Groups WHERE AsUserId IN (SELECT Id FROM Users)
Note: User impersonation has the following limitations:
Group の作成は、Name カラムだけで可能です。
INSERT INTO Groups (Name, Provenance, MemberViewabilityLevel) VALUES ('new group', 'google', 'admins_only')
ReadOnly=False のカラムが更新可能です。
UPDATE Groups SET InvitabilityLevel = 'admins_and_members' WHERE Id = '111'
Groups は、Id を指定してDELETE ステートメントを発行することで削除できます。
DELETE FROM Groups WHERE Id = '111'
| Name | Type | ReadOnly | Description |
| ID [KEY] | String | True |
The Id of the group. |
| Name | String | False |
The name of the group. |
| Provenance | String | False |
Typically used to track the external source where the group is coming from. |
| ExternalSyncIdentifier | String | False |
Typically used as a group identifier for groups coming from an external source. |
| Description | String | False |
The description of the group. |
| InvitabilityLevel | String | False |
Specifies who can invite this group to folders. |
| MemberViewabilityLevel | String | False |
Specifies who can view the members of this group. |
| CreatedAt | Datetime | True |
The date the group was created at, you need to specify an Id to recieve this column. |
| ModifiedAt | Datetime | True |
The date the group was modified at, you need to specify an Id to recieve this column. |
| AsUserId | String | False |
The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
Query all legal hold policies that belong to an enterprise.
| Name | Type | ReadOnly | Description |
| Id [KEY] | String | False |
The Id of the legal hold policy. |
| AssignmentFileCount | Integer | True |
The count for file assignments. |
| AssignmentFileVersionCount | Integer | True |
The count for file version assignments. |
| AssignmentFolderCount | Integer | True |
The count for folder assignments. |
| AssignmentUserCount | Integer | True |
The count for user assignments. |
| CreatedAt | Datetime | True |
The creation time of the policy. |
| CreatedById | String | True |
The Id of the user that created the policy. |
| CreatedByLogin | String | True |
The login of the user that created the policy. |
| CreatedByName | String | True |
The name of the user that created the policy. |
| CreatedByType | String | True |
The type of the user that created the policy. |
| DeletedAt | Datetime | True |
The deletion time of the policy. |
| Description | String | False |
The description of the policy. |
| FilterEndedAt | Datetime | False |
The ending time of the filter. |
| FilterStartedAt | Datetime | False |
The starting time of the filter. |
| ModifiedAt | Datetime | True |
The modified time of the policy. |
| PolicyName | String | False |
The name of the policy. |
| ReleaseNotes | String | False |
The release notes for the policy. |
| Status | String | True |
The status of the policy. |
| Type | String | True |
The type of the policy. |
| AsUserId | String | False |
The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
| IsOngoing | Boolean | False |
Used only for INSERT statements. It defines whether new assignments under this policy should continue applying to files even after initialization. |
Create, update, delete, and query the available Memberships in Box.
Membership はUser とGroup のリレーションです。
Memberships テーブルからのSelect には、Id、GroupId、またはUserId を指定してください。
SELECT * FROM Memberships WHERE Id = '123'
If you're authenticated as an administrator with user impersonation permissions, you can query memberships from multiple user accounts:
SELECT * FROM Memberships WHERE AsUserId IN (SELECT Id FROM Users)
Note: User impersonation has the following limitations:
Memberships に挿入するには、Group(GroupId)とUser(UserId)を紐付けます。
INSERT INTO Memberships (GroupId, UserId) VALUES (1001, 123)
Member のロールだけが更新可能です。デフォルトのロールは'Member' で、'admin' のオプションが可能です。
UPDATE Memberships SET Role = 'admin' WHERE Id = '100'
Memberships は、Id を指定してDELETE ステートメントを発行することで削除できます。
DELETE FROM Memberships WHERE Id = '100'
| Name | Type | ReadOnly | Description |
| Id [KEY] | String | True |
The Id of the membership. |
| Role | String | False |
The role of the user that is in this membership. |
| CreatedAt | Datetime | True |
The date the membership was created at, you need to specify an Id to recieve this column. |
| ModifiedAt | Datetime | True |
The date the membership was modified at, you need to specify an Id to recieve this column. |
| UserName | String | True |
The name of the user of the membership. |
| UserLogin | String | True |
The login of the user of the membership. |
| UserId | String | False |
The id of the user of the membership. |
| GroupName | String | False |
The group name of the membership. |
| GroupId | String | False |
The group of the membership. |
| AsUserId | String | False |
The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
Create, update, delete and query the Metadata Templates in Box
You can retrieve information about the Metadata Template.
SELECT * FROM MetadataTemplates
You can also retrieve the information of any Template in your enterprise:
SELECT * FROM MetadataTemplates WHERE Id = 'e93746cc-03f6-4dee-ab45-01834989950c'
You can insert Metadata Template for your enterprise.
Insert a single field to the Template.
INSERT INTO MetadataTemplates (DisplayName, Scope, FieldsDisplayName, FieldsType) VALUES ('TestTemplate', 'enterprise', 'TestField', 'string')
Insert multiple fields to the Template.
INSERT INTO MetadataFields#TEMP (FieldDisplayName, FieldType, FieldOptions) VALUES ('Industry', 'enum', 'Technology, HealthCare')
INSERT INTO MetadataFields#TEMP (FieldDisplayName, FieldType) VALUES ('Contact Role', 'string')
INSERT INTO MetadataTemplates (DisplayName, Scope, FieldsAggregate) VALUES ('TestTemplate', 'enterprise', 'MetadataFields#TEMP')
Add field to the existing Template.
UPDATE MetadataTemplates SET Op = 'addField', FieldsKey = 'category', FieldsDisplayName = 'Category', FieldsisHidden = false, FieldsType = 'string' WHERE Scope = 'enterprise' AND TemplateKey = 'TestTemplate'
Update Fields in the Template.
UPDATE MetadataTemplates SET Op = 'editField', FieldsKey = 'Category', FieldsDescription = 'The Product Category' WHERE Scope = 'enterprise' AND TemplateKey = 'TestTemplate'
ReOrder Fields in the Template.
UPDATE MetadataTemplates SET Op = 'reorderFields', FieldsKey = 'Category,Industry,Contact' WHERE Scope = 'enterprise' AND TemplateKey = 'TestTemplate'
Remove Fields from the Template.
UPDATE MetadataTemplates SET Op = 'removeField', FieldsKey = 'Industry' WHERE Scope = 'enterprise' AND TemplateKey = 'TestTemplate'
Add Enum Options to the EnumField.
UPDATE MetadataTemplates SET Op = 'addEnumOption', FieldsKey = 'Industry', EnumOptionKey = 'AL' WHERE Scope = 'enterprise' AND TemplateKey = 'TestTemplate'
ReOrder Enum Options in the EnumField.
UPDATE MetadataTemplates SET Op = 'reorderEnumOptions', FieldsKey = 'industry', EnumOptionKey = 'AL,AK,AR,N/A' WHERE Scope = 'enterprise' AND TemplateKey = 'TestTemplate'
Update Enum Options in the EnumField. Specify Present value, New value in the EnumOption column separated with comma.
UPDATE MetadataTemplates SET Op = 'editEnumOption', FieldsKey = 'industry', EnumOptionKey = 'N/A,Outside USA' WHERE Scope = 'enterprise' AND TemplateKey = 'TestTemplate'
Remove Enum Options from the EnumField
UPDATE MetadataTemplates SET Op = 'removeEnumOption', FieldsKey = 'industry', EnumOptionKey = 'Outside USA' WHERE Scope = 'enterprise' AND TemplateKey = 'TestTemplate'
MetadataTemplates can be deleted by providing Scope and TemplateKey and issuing a DELETE statement.
DELETE FROM MetadataTemplates WHERE Scope = 'enterprise' AND TemplateKey = 'TestTemplate'
| Name | Type | ReadOnly | Description |
| Id [KEY] | String | True |
The ID of the metadata template. |
| TemplateKey | String | False |
A unique identifier for the template. This identifier is unique across the scope of the enterprise to which the metadata template is being applied, yet is not necessarily unique across different enterprises |
| CopyInstanceOnItemCopy | Boolean | False |
Whether or not to copy the metadata for a file or folder when an it is copied. |
| DisplayName | String | False |
The display name of the template |
| FieldsId [KEY] | String | True |
The Unique Id of the Metadata Template field |
| FieldsKey | String | False |
A unique identifier for the field. The identifier must be unique within the template to which it belongs. |
| FieldsDisplayName | String | False |
The display name of the field as it is shown to the user in the web and mobile apps. |
| FieldsType | String | False |
The type of field |
| FieldsDescription | String | False |
A description of the field |
| FieldsisHidden | Boolean | False |
Whether this field is hidden in the UI for the user and can only be set through the API instead. |
| FieldsOptions | String | False |
A list of options for this field. This is used in combination with the enum and multiSelect field types. |
| TemplateisHidden | Boolean | False |
Defines if this template is visible in the Box web app UI, or if it is purely intended for usage through the API |
| Scope | String | False |
The scope of the metadata template. |
| Type | String | True |
Type of the template. Value is always metadata_template |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
| Name | Type | Description |
| Op | String |
The type of change to perform on the template. Some of these are hazardous as they will change existing templates. 使用できる値は次のとおりです。editTemplate, addField, reorderFields, addEnumOption, reorderEnumOptions, reorderMultiSelectOptions, addMultiSelectOption, editField, removeField, editEnumOption, removeEnumOption, editMultiSelectOption, removeMultiSelectOption |
| EnumOptionKey | String |
Update Only: For operations that affect multiple enum options this defines the keys of the options that are affected. |
| MultiSelectOptionKey | String |
Update Only: For operations that affect multiple multi select options this defines the keys of the options that are affected. |
| FieldsAggregate | String |
To insert more than one fields in the Template. The accepted columns are FieldsDisplayName, FieldsType, FieldsDescription, FieldsKey, FieldsisHidden, FieldsOptions |
Create, update, delete, and query the available Task Assignments in Box.
Task Assignments は特定のユーザーにアサインされたタスクです。
TaskAssignments テーブルのSelect には、Id もしくはTaskId を指定してください。
SELECT * FROM TaskAssignments WHERE Id = '123'
If you're authenticated as an administrator with user impersonation permissions, you can query task assignments from multiple user accounts:
SELECT * FROM TaskAssignments WHERE AsUserId IN (SELECT Id FROM Users)
Note: User impersonation has the following limitations:
Task Assignments に挿入するには、Task(TaskId)とUser(AssignedToId) を紐付けます。
INSERT INTO TaskAssignments (TaskId, AssignedToId) VALUES (1001, 123)
Task Assignment のメッセージ、もしくはそのResolutionState だけが更新できます。
UPDATE TaskAssignments SET Message = 'x', ResolutionState = 'completed' WHERE Id = '111'
Task Assignments は、Id を指定してDELETE ステートメントを発行することで削除できます。
DELETE FROM TaskAssignments WHERE Id = '111'
| Name | Type | ReadOnly | Description |
| Id [KEY] | String | True |
The Id of the task assignment. |
| TaskId | String | False |
The Id of the task to assign. |
| AssignedToId | String | False |
The Id of the user to assign the task to. |
| AssignedToName | String | False |
The Name of the user the task is assigned to. |
| AssignedToLogin | String | False |
The Login of the user the task is assigned to. |
| ItemType | String | False |
The the type of the item the task assignment is connected to. |
| ItemId | String | False |
The the id of the item the task assignment is connected to. |
| ItemName | String | False |
The the name of the item the task assignment is connected to. |
| Message | String | False |
The message attached to the task assignment. |
| AssignedById | String | False |
The Id of the user that assigned the task. |
| AssignedByName | String | False |
The Name of the user that assigned the task. |
| AssignedByLogin | String | False |
The Login of the user that assigned the task. |
| AssignedAt | Datetime | True |
The date the task was assigned at. |
| RemindedAt | Datetime | True |
The date of the task reminder. |
| CompletedAt | Datetime | True |
The date the task was completed at. |
| ResolutionState | String | False |
Determines if the task has been attended to or not. 使用できる値は次のとおりです。completed, incomplete, approved, rejected |
| AsUserId | String | False |
The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
Create, update, delete, and query the available Tasks in Box.
Task は誰かにアサインされることを待っているジョブです。これらのタスクは、一般的にはFile であるアイテムにリレーションがあります。
Task テーブルのSelect には、Id もしくはItemId を指定してください。
SELECT * FROM Tasks WHERE Id = '123'
If you're authenticated as an administrator with user impersonation permissions, you can query tasks from multiple user accounts:
SELECT * FROM Tasks WHERE AsUserId IN (SELECT Id FROM Users)
Note: User impersonation has the following limitations:
Task テーブルへの挿入にはItemId が必要です。現時点ではBox API でタスク管理できるタイプはFile だけです。
INSERT INTO Tasks (ItemId, ItemType, Action, Message) VALUES (1001, 'file', 'review', 'message')
特定のTask をUPDATE するには、Message が必要です。また、Action およびDueAt カラムも更新可能です。Action カラムは'review' の値しか取れません。
UPDATE Tasks SET Message = 'updated message', Action = 'review', DueAt = '2016-05-14' WHERE ID = '100'
Id を指定して、Task を削除することができます。
DELETE FROM Tasks WHERE Id = '100'
| Name | Type | ReadOnly | Description |
| Id [KEY] | String | True |
The Id of the task. |
| DueAt | Datetime | False |
The date due of this task. |
| ItemId | String | False |
The Id of the item the task is targeted to. |
| ItemType | String | False |
The type of the item the task is targeted to. |
| Action | String | False |
The action the task assignee will be prompted to do. |
| Message | String | False |
An optional message to include with the task. |
| CreatedAt | Datetime | True |
The date that the task was created at. |
| CreatedById | String | True |
The id of user that created the task. |
| CreatedByName | String | True |
The name of the user that created the task. |
| CreatedByLogin | String | True |
The login of the user that created the task. |
| IsCompleted | Boolean | False |
If the task has been completed or not. |
| AsUserId | String | False |
The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
Delete and query the available TrashedItems in Box.
TrashedItems はすでに削除されたFiles およびFolders です。このテーブルは2つの処理のみが可能です:Update およびDelete。このテーブルから削除するとFile は永久に削除され、戻すことができません。
TrashedItems テーブルの特定のアイテムを検索するには、アイテムのタイプ(File、Folder、またはWEB_LINK)を指定します。
SELECT * FROM TrashedItems WHERE SearchTerms LIKE '%Untitled%' AND Type = 'file'
もしくは、1つの削除済みFolder をクエリしたい場合には、次のようなクエリを実行します:
SELECT * FROM TrashedItems WHERE Id = '123' AND Type = 'folder'
もしくは、1つの削除済みBookmark をクエリしたい場合には、次のようなクエリを実行します:
SELECT * FROM TrashedItems WHERE Id = '123' AND Type = 'web_link'
TrashedItems を削除するには、アイテムのId およびType を指定してDELETE ステートメントを発行します。
DELETE FROM TrashedItems WHERE Id = 'abc123' AND Type = 'file'
| Name | Type | ReadOnly | Description |
| SearchTerms | String | False |
Query to search the trashed items database. |
| Id [KEY] | String | False |
The Id of the trashed item. |
| Name | String | False |
The name of the trashed item. |
| Type | String | False |
The type of the item can be trashed item,folder or web_link. |
| Sha1 | String | False |
The SHA-1 encryption of the trashed item. |
| Etag | String | False |
The Etag of the trashed item. |
| SequenceId | String | False |
The sequence Id of the trashed item. |
| Description | String | False |
The description of the trashed item. |
| Size | Integer | False |
The size of the trashed item. |
| CreatedAt | Datetime | False |
The date the trashed item was created at. |
| ModifiedAt | Datetime | False |
The date the trashed item was modified at. |
| TrashedAt | Datetime | False |
The date the trashed item was trashed at. |
| PurgedAt | Datetime | False |
The date the trashed item was purged at. |
| ContentCreatedAt | Datetime | False |
The date the content of the trashed item was created at. |
| ContentModifiedAt | Datetime | False |
The date the content of the trashed item was modified at. |
| CreatedById | String | False |
The Id of the user that created the trashed item. |
| CreatedByName | String | False |
The Name of the user that created the trashed item.. |
| CreatedByLogin | String | False |
The Login of the user that created the trashed item.. |
| SharedLink | String | False |
The shared link of the user that created the trashed item. |
| ModifiedBy | String | False |
The Id of the user that last modified the trashed item. |
| ModifiedByName | String | False |
The Name of the user that last modified the trashed item.. |
| ModifiedByLogin | String | False |
The Login of the user that last modified the trashed item.. |
| OwnedById | String | False |
The Id of the user that owns the trashed item. |
| OwnedByName | String | False |
The Name of the user that owns the trashed item.. |
| OwnedByLogin | String | False |
The Login of the user that owns the trashed item.. |
| ParentId | String | False |
The Id of the folder that contains the trashed item. |
| ItemStatus | String | False |
The status of the trashed item. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
| Name | Type | Description |
| Scope | String |
The scope of the search. |
| FileExtension | String |
The extension of the trashed item. |
| SearchContent | String |
The content to search the query at, separated by commas. |
| AsUserId | String |
The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
Create, update, delete, and query the available Users in Box.
カレントユーザー、Id で指定されたエンタープライズ内の一人のユーザー、もしくはエンタープライズ内のすべてのユーザーを取得することができます。
SELECT * FROM Users
エンタープライズ内のユーザーの情報を取得することもできます。
SELECT * FROM Users WHERE Id = '1'
If you're authenticated as an administrator with user impersonation permissions, you can query users from multiple user accounts:
SELECT * FROM Users WHERE AsUserId IN (SELECT Id FROM Users)
Note: User impersonation has the following limitations:
エンタープライズにユーザーを招待することができます。次のクエリは、エンタープライズへの参加の招待メールを送信します。
INSERT INTO Users (Login, Name, Role) VALUES ('[email protected]', 'Username', 'coadmin')
ReadOnly=False のカラムが更新可能です。
UPDATE Users SET Name = 'Test', Role = 'user', IsExemptFromDeviceLimits = false WHERE Id = '111'
Users は、Id を指定してDELETE ステートメントを発行することで削除できます。
DELETE FROM Users WHERE Id = '111'
| Name | Type | ReadOnly | Description |
| Id [KEY] | String | True |
The Id of the user. When selecting you can set this to the value me to retrieve information for the logged-user. |
| Login | String | False |
The login of the user. |
| Name | String | False |
The name of the user. |
| EnterpriseId | String | False |
The id of the user's enterprise. Set this to null to disassociate the user from the enterprise. |
| Role | String | False |
The role of the user. |
| Language | String | False |
The preferred language of the user. |
| IsPlatformAccessOnly | Boolean | False |
Indicates whether the user is an app user. |
| IsSyncEnabled | Boolean | False |
If the user is allowed to use Box Sync or not. |
| JobTitle | String | False |
The job title of the user. |
| Phone | String | False |
The phone of the user. |
| Address | String | False |
The address of the user. |
| SpaceAmount | Long | False |
The amount of space the user is allowed to use. |
| SpaceUsed | Long | False |
The amount of space the user has used. |
| MaxUploadSize | Long | False |
The maximum upload size the user is allowed to upload. |
| TrackingCodes | String | False |
The tracking codes of the user, separated by commas. |
| CanSeeManagedUsers | Boolean | False |
The date the content of the user was created at. |
| TimeZone | String | False |
The preferred timezone of the user. |
| IsExemptFromDeviceLimits | Boolean | False |
If the user is exempt from device limitations or not. |
| IsExemptFromLoginVerification | Boolean | False |
If the user is exempt from login verification or not. |
| Status | String | False |
The status of the user. |
| IsPasswordResetRequired | Boolean | False |
If the user should be asked to change his password on the next login or not. |
| CreatedAt | Datetime | True |
The date the user was created. |
| ModifiedAt | Datetime | True |
The date the user was modified. |
| AsUserId | String | False |
The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
ビューは、データを示すという点でテーブルに似ていますが、ビューは読み取り専用です。
クエリは、ビューに対して通常のテーブルと同様に実行することができます。
| Name | Description |
| Collections | List Collections in Box. |
| FileMetadataInstances | Retrieves all metadata instances fields applied to a given file. |
| FileVersions | Query the available file versions in the box. |
| RecentItems | List RecentItems in Box. |
| SharedItems | Query the available shared items in Box. |
| SignRequests | List all Sign Requests. |
| UserEvents | Query the available Events in Box. |
List Collections in Box.
| Name | Type | Description |
| Id | String | The unique identifier for this collection. |
| Name | String | The name of the collection. |
| Type | String | The type of the collection. |
| CollectionType | String | The type of the collection. This is used to determine the proper visual treatment for collections. |
Retrieves all metadata instances fields applied to a given file.
| Name | Type | Description |
| Id | String | A UUID to identify the metadata instance. |
| FileId [KEY] | String | The ID of the file. |
| Template | String | The name of the template. |
| Parent | String | The identifier of the item that this metadata instance has been attached to. This combines the type and the id of the parent in the form {type}_{id}. |
| Scope | String | An ID for the scope in which this template has been applied. This will be enterprise_{enterprise_id} for templates defined for use in this enterprise, and global for general templates that are available to all enterprises using Box. |
| Version | String | The version of the metadata instance. This version starts at 0 and increases every time a user-defined property is modified. |
| CanEdit | String | Whether the user can edit this metadata instance. |
| Type | String | A unique identifier for the type. |
| TypeVersion | String | The last-known version of the template of the object. |
| UserDefinedFieldName | String | The user-defined field name. |
| UserDefinedFieldValue | String | The value of the user defined field. |
Query the available file versions in the box.
File Versions contains information about older versions of a file. This table supports only SELECT operation.
FileId is required to search all the FileVersions in your files.
SELECT * FROM FileVersions WHERE FileId = '585442984153'
If you're authenticated as an administrator with user impersonation permissions, you can query file versions from multiple user accounts:
SELECT * FROM FileVersions WHERE AsUserId IN (SELECT Id FROM Users)
Note: User impersonation has the following limitations:
| Name | Type | Description |
| Id [KEY] | String | The ID of the file version. |
| FileId | String | The ID of the file. |
| CreatedAt | Datetime | The date the content of the file was created at. |
| ModifiedAt | Datetime | The date the content of the file was modified at. |
| ModifiedById | String | The Id of the user that last modified the file. |
| ModifiedByName | String | The Name of the user that last modified the file. |
| ModifiedByLogin | String | The Login of the user that last modified the file. |
| ModifiedByType | String | The Type of the user that last modified the file. |
| Name | String | The name of the file. |
| PurgedAt | Datetime | The date the content of the file was purged at. |
| RestoredAt | Datetime | The date the content of the file was modified at. |
| RestoredById | String | The Id of the user that last modified the file. |
| RestoredByLogin | String | The Name of the user that last modified the file. |
| RestoredByName | String | The Login of the user that last modified the file. |
| RestoredByType | String | The Type of the user that last modified the file. |
| Sha1 | String | The SHA-1 encryption of the file version. |
| Size | Int64 | The size of the file version. |
| TrashedAt | Datetime | The date the file version was trashed at. |
| TrashedById | String | The Id of the user that trashed the file. |
| TrashedByLogin | String | The Name of the user that trashed the file. |
| TrashedByName | String | The Login of the user that trashed the file. |
| TrashedByType | String | The Type of the user that trashed the file. |
| Type | String | Type of file versions. |
| AsUserId | String | The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
List RecentItems in Box.
| Name | Type | Description |
| Type | String | The type of the recent item. |
| InteractedAt | Datetime | The time of the most recent interaction. |
| InteractionSharedLink | String | If the item was accessed through a shared link it will appear here, otherwise this will be null. |
| InteractionType | String | The most recent type of access the user performed on the item. |
| ItemId | String | The unique identifier for the recent item. |
List all Sign Requests.
| Name | Type | Description |
| SignRequestAggregate | String | A JSON Aggregate representing the SignRequest item. |
| AsUserId | String | The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
Query the available Events in Box.
User events はユーザーアカウントで変更後に保存されたログです。
カレントユーザーのすべてのイベントをクエリします:
SELECT * FROM UserEvents
If you're authenticated as an administrator with user impersonation permissions, you can query user events from multiple user accounts:
SELECT * FROM UserEvents WHERE AsUserId IN (SELECT Id FROM Users)
Note: User impersonation has the following limitations:
| Name | Type | Description |
| Id [KEY] | String | The Id of the event. |
| SourceId | String | The Id of the source that triggered the event. |
| SourceType | String | The type of the source that triggered the event. |
| CreatedById | String | The Id of the user that created the event. |
| CreatedByName | String | The Name of the user that created the event. |
| CreatedByLogin | String | The Login of the user that created the event. |
| CreatedAt | Datetime | The date the event was created at. This can only be used when requesting the events with a StreamType of admin_logs |
| RecordedAt | Datetime | The date the event was recorded at. |
| SessionId | String | The Id of the session of the event. |
| EventType | String | The type of the event. |
| ClassificationName | String | The classification name of the event. |
| AdditionalDetails | String | This object provides additional information about the event if available. This can include how a user performed an event as well as additional information to correlate an event to external KeySafe logs. Not all events have an additional_details object. This object is only available in the Enterprise Events. |
| AsUserId | String | The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
SELECT ステートメントのWHERE 句では、疑似カラムフィールドを使用して、データソースから返されるタプルを詳細に制御することができます。
| Name | Type | Description |
| StreamType | String | The type of events to stream.
使用できる値は次のとおりです。all, changes, sync, admin_logs, admin_logs_streaming |
| プロパティ | 説明 |
| AuthScheme | The type of authentication to use when connecting to Box. |
| ImpersonateUserMode | Specify the type of the user impersonation. It should be whether the User mode or the Admin mode. |
| プロパティ | 説明 |
| OAuthJWTCert | JWT 証明書のストア。 |
| OAuthJWTCertType | JWT 証明書を格納するキーストアの種類。 |
| OAuthJWTCertPassword | OAuth JWT 証明書のパスワード。パスワードを必要とする証明書ストアにアクセスするために使用されます。証明書ストアがパスワードを必要としない場合は、このプロパティを空白のままにします。 |
| OAuthJWTCertSubject | OAuth JWT 証明書のサブジェクトで、ストアで一致する証明書を検索するために使用されます。部分一致と、先頭の証明書を選択するためのワイルドカード '*' をサポートします。 |
| OAuthJWTIssuer | Java Web Token の発行者。 |
| OAuthJWTSubject | アプリケーションからデリゲートアクセスの要求対象となるユーザーサブジェクト。 |
| OAuthJWTSubjectType | JWT 認証のサブタイプ。 |
| OAuthJWTPublicKeyId | JWT の公開キーのID。 |
| プロパティ | 説明 |
| OAuthClientId | カスタムOAuth アプリケーションの作成時に割り当てられたクライアントId を指定します。(コンシューマーキーとも呼ばれます。)このID は、カスタムアプリケーションをOAuth 認可サーバーに登録します。 |
| OAuthClientSecret | カスタムOAuth アプリケーションの作成時に割り当てられたクライアントシークレットを指定します。( コンシューマーシークレット とも呼ばれます。)このシークレットは、カスタムアプリケーションをOAuth 認可サーバーに登録します。 |
| SubjectId | The user subject for which the application is requesting delegated access. |
| SubjectType | The Subject Type for the Client Credentials authentication. |
| プロパティ | 説明 |
| SSLServerCert | TLS/SSL を使用して接続する際に、サーバーが受け入れ可能な証明書を指定します。 |
| プロパティ | 説明 |
| FirewallType | provider がプロキシベースのファイアウォールを介してトラフィックをトンネリングするために使用するプロトコルを指定します。 |
| FirewallServer | ファイアウォールを通過し、ユーザーのクエリをネットワークリソースに中継するために使用されるプロキシのIP アドレス、DNS 名、またはホスト名を識別します。 |
| FirewallPort | プロキシベースのファイアウォールで使用するTCP ポートを指定します。 |
| FirewallUser | プロキシベースのファイアウォールに認証するアカウントのユーザーID を識別します。 |
| FirewallPassword | プロキシベースのファイアウォールで認証するユーザーアカウントのパスワードを指定します。 |
| プロパティ | 説明 |
| ProxyAutoDetect | provider が、手動で指定されたプロキシサーバーを使用するのではなく、既存のプロキシサーバー構成についてシステムプロキシ設定をチェックするかどうかを指定します。 |
| ProxyServer | HTTP トラフィックをルートするプロキシサーバーのホストネームもしくはIP アドレス。 |
| ProxyPort | クライアントとの間でHTTP トラフィックをルーティングするために予約された、指定されたプロキシサーバー(ProxyServer 接続プロパティで設定)のTCP ポート。 |
| ProxyAuthScheme | ProxyServer 接続プロパティで指定されたプロキシサーバーに対して認証する際にprovider が使用する認証方法を指定します。 |
| ProxyUser | ProxyServer 接続プロパティで指定されたプロキシサーバーに登録されているユーザーアカウントのユーザー名。 |
| ProxyPassword | ProxyUser 接続プロパティで指定されたユーザーに紐付けられたパスワード。 |
| ProxySSLType | ProxyServer 接続プロパティで指定されたプロキシサーバーに接続する際に使用するSSL タイプ。 |
| ProxyExceptions | ProxyServer 接続プロパティで設定されたプロキシサーバー経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。 |
| プロパティ | 説明 |
| LogModules | ログファイルに含めるコアモジュールを指定します。セミコロンで区切られたモジュール名のリストを使用します。デフォルトでは、すべてのモジュールがログに記録されます。 |
| プロパティ | 説明 |
| Location | テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリの場所を指定します。サービスの要件に応じて、これは絶対パスまたは相対パスのいずれかで表されます。 |
| BrowsableSchemas | レポートされるスキーマを利用可能なすべてのスキーマのサブセットに制限するオプション設定。例えば、 BrowsableSchemas=SchemaA,SchemaB,SchemaC です。 |
| Tables | レポートされるテーブルを利用可能なすべてのテーブルのサブセットに制限するオプション設定。例えば、 Tables=TableA,TableB,TableC です。 |
| Views | レポートされたビューを使用可能なテーブルのサブセットに制限するオプション設定。例えば、 Views=ViewA,ViewB,ViewC です。 |
| プロパティ | 説明 |
| AsUserId | The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
| DirectoryRetrievalDepth | Folders およびFiles テーブルをクエリするフォルダの深度レベル。 |
| ExposeCollectionViews | Determines whether to expose every collection in your Box account as separate views. |
| IncludeCustomFields | メタデータテンプレートをFiles テーブルのカスタムカラムとして公開する必要がある場合にはtrue に設定します。 |
| MaxRows | 集計やGROUP BY を使用しないクエリで返される最大行数を指定します。 |
| Other | 特定のユースケースに対して追加の隠しプロパティを指定します。これらは通常のprovider の機能では必要ありません。複数のプロパティを定義するには、セミコロンで区切られたリストを使用します。 |
| PseudoColumns | テーブルカラムとして公開する擬似カラムを指定します。'TableName=ColumnName;TableName=ColumnName' という形式を使用します。デフォルトは空の文字列で、このプロパティを無効にします。 |
| Timeout | provider がタイムアウトエラーを返すまでにサーバーからの応答を待機する最大時間を秒単位で指定します。デフォルトは60秒です。タイムアウトを無効にするには0を設定します。 |
| UserDefinedViews | カスタムビューを定義するJSON 構成ファイルへのファイルパスを指定します。provider は、このファイルで指定されたビューを自動的に検出して使用します。 |
このセクションでは、本プロバイダーの接続文字列で設定可能なAuthentication プロパティの全リストを提供します。
| プロパティ | 説明 |
| AuthScheme | The type of authentication to use when connecting to Box. |
| ImpersonateUserMode | Specify the type of the user impersonation. It should be whether the User mode or the Admin mode. |
The type of authentication to use when connecting to Box.
Specify the type of the user impersonation. It should be whether the User mode or the Admin mode.
Specify the type of the user impersonation. It should be whether the User mode or the Admin mode. The Admin mode is available only for Enterprise with Governance accounts and will be upon request. It will not work for any other accounts.
このセクションでは、本プロバイダーの接続文字列で設定可能なJWT OAuth プロパティの全リストを提供します。
| プロパティ | 説明 |
| OAuthJWTCert | JWT 証明書のストア。 |
| OAuthJWTCertType | JWT 証明書を格納するキーストアの種類。 |
| OAuthJWTCertPassword | OAuth JWT 証明書のパスワード。パスワードを必要とする証明書ストアにアクセスするために使用されます。証明書ストアがパスワードを必要としない場合は、このプロパティを空白のままにします。 |
| OAuthJWTCertSubject | OAuth JWT 証明書のサブジェクトで、ストアで一致する証明書を検索するために使用されます。部分一致と、先頭の証明書を選択するためのワイルドカード '*' をサポートします。 |
| OAuthJWTIssuer | Java Web Token の発行者。 |
| OAuthJWTSubject | アプリケーションからデリゲートアクセスの要求対象となるユーザーサブジェクト。 |
| OAuthJWTSubjectType | JWT 認証のサブタイプ。 |
| OAuthJWTPublicKeyId | JWT の公開キーのID。 |
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 形式の証明書を含む文字列の名前です。 |
| BCFKSFILE | この証明書ストアは、Bouncy Castle キーストアを含むファイルの名前です。 |
| BCFKSBLOB | この証明書ストアは、Bouncy Castle キーストアを含む文字列(Base-64エンコード)です。 |
| BOXJSON | この証明書ストアは、サービスアカウントのクレデンシャルを含むJSON ファイルの名前です。Box に接続する場合にのみ有効です。 |
| BOXJSONBLOB | この証明書ストアは、サービスアカウントのJSON を含む文字列です。Box に接続する場合にのみ有効です。 |
OAuth JWT 証明書のパスワード。パスワードを必要とする証明書ストアにアクセスするために使用されます。証明書ストアがパスワードを必要としない場合は、このプロパティを空白のままにします。
このプロパティは、証明書ストアを開くために必要なパスワードを指定します。ただし、ストアの種類がパスワードを必要とする場合に限ります。 パスワードが必要かどうかを判断するには、ご利用の証明書ストアのドキュメントまたは設定を参照してください。
OAuth JWT 証明書のサブジェクトで、ストアで一致する証明書を検索するために使用されます。部分一致と、先頭の証明書を選択するためのワイルドカード '*' をサポートします。
このプロパティの値は、ストアで一致する証明書を検索するために使用されます。検索プロセスは以下のように動作します。
値を '*' に設定すると、ストアの先頭の証明書が自動的に選択されます。 証明書のサブジェクトは識別名フィールドおよび値のカンマ区切りのリストです。 例:CN=www.server.com, OU=test, C=US, [email protected]。一般的なフィールドには以下のものが含まれます。
| フィールド | 説明 |
| CN | 共通名。一般的には、www.server.com のようなホスト名です。 |
| O | 法人名 |
| OU | 法人の部署名 |
| L | 法人の住所(市町村名) |
| S | 法人の住所(都道府県) |
| C | 国名 |
| E | E メールアドレス |
フィールド値にカンマが含まれる場合は、引用符で囲んでください。例:"O=ACME, Inc."。
Java Web Token の発行者。
Java Web Token の発行者。 通常は、OAuth アプリケーションのクライアントId またはE メールアドレスとなります。
アプリケーションからデリゲートアクセスの要求対象となるユーザーサブジェクト。
アプリケーションからデリゲートアクセスの要求対象となるユーザーサブジェクトです。通常は、ユーザーのアカウント名またはE メールアドレスとなります。
JWT 認証のサブタイプ。
JWT 認証のサブタイプ。要求されているトークンの種類に応じて[enterprise]または[user]に設定します。
JWT の公開キーのID。
JWT の公開キーのID。アプリケーション設定の公開キーID の値に設定します。
このセクションでは、本プロバイダーの接続文字列で設定可能なOAuth プロパティの全リストを提供します。
| プロパティ | 説明 |
| OAuthClientId | カスタムOAuth アプリケーションの作成時に割り当てられたクライアントId を指定します。(コンシューマーキーとも呼ばれます。)このID は、カスタムアプリケーションをOAuth 認可サーバーに登録します。 |
| OAuthClientSecret | カスタムOAuth アプリケーションの作成時に割り当てられたクライアントシークレットを指定します。( コンシューマーシークレット とも呼ばれます。)このシークレットは、カスタムアプリケーションをOAuth 認可サーバーに登録します。 |
| SubjectId | The user subject for which the application is requesting delegated access. |
| SubjectType | The Subject Type for the Client Credentials authentication. |
カスタムOAuth アプリケーションの作成時に割り当てられたクライアントId を指定します。(コンシューマーキーとも呼ばれます。)このID は、カスタムアプリケーションをOAuth 認可サーバーに登録します。
OAuthClientId は、ユーザーがOAuth 経由で認証を行う前に設定する必要があるいくつかの接続パラメータの1つです。詳細は接続の確立を参照してください。
カスタムOAuth アプリケーションの作成時に割り当てられたクライアントシークレットを指定します。( コンシューマーシークレット とも呼ばれます。)このシークレットは、カスタムアプリケーションをOAuth 認可サーバーに登録します。
OAuthClientSecret は、ユーザーがOAuth 経由で認証を行う前に設定する必要があるいくつかの接続パラメータの1つです。詳細は接続の確立を参照してください。
The user subject for which the application is requesting delegated access.
Id of the user or enterprise, based on the configuration set in SubjectType.
The Subject Type for the Client Credentials authentication.
The Subject Type for the Client Credentials authentication. Set this to "enterprise" or "user" depending on the type of token being requested.
このセクションでは、本プロバイダーの接続文字列で設定可能な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 | provider がプロキシベースのファイアウォールを介してトラフィックをトンネリングするために使用するプロトコルを指定します。 |
| FirewallServer | ファイアウォールを通過し、ユーザーのクエリをネットワークリソースに中継するために使用されるプロキシのIP アドレス、DNS 名、またはホスト名を識別します。 |
| FirewallPort | プロキシベースのファイアウォールで使用するTCP ポートを指定します。 |
| FirewallUser | プロキシベースのファイアウォールに認証するアカウントのユーザーID を識別します。 |
| FirewallPassword | プロキシベースのファイアウォールで認証するユーザーアカウントのパスワードを指定します。 |
provider がプロキシベースのファイアウォールを介してトラフィックをトンネリングするために使用するプロトコルを指定します。
プロキシベースのファイアウォール(またはプロキシファイアウォール)は、ユーザーのリクエストとそれがアクセスするリソースの間に介在するネットワークセキュリティデバイスです。 プロキシは認証済みのユーザーのリクエストを受け取り、ファイアウォールを通過して適切なサーバーにリクエストを送信します。
プロキシは、リクエストを送信したユーザーに代わってデータバケットを評価し転送するため、ユーザーはサーバーに直接接続することなく、プロキシのみに接続します。
Note:デフォルトでは、Sync App はシステムプロキシに接続します。この動作を無効化し、次のプロキシタイプのいずれかに接続するには、ProxyAutoDetect をfalse に設定します。
次の表は、サポートされている各プロトコルのポート番号情報です。
| プロトコル | デフォルトポート | 説明 |
| TUNNEL | 80 | Sync App がBox への接続を開くポート。トラフィックはこの場所のプロキシを経由して行き来します。 |
| SOCKS4 | 1080 | Sync App がBox への接続を開くポート。SOCKS 4 は次にFirewallUser 値をプロキシに渡し、接続リクエストが許容されるかどうかを決定します。 |
| SOCKS5 | 1080 | Sync App がBox にデータを送信するポート。SOCKS 5 プロキシに認証が必要な場合には、FirewallUser およびFirewallPassword をプロキシが認識する認証情報に設定します。 |
HTTP プロキシへの接続には、ProxyServer およびProxyPort ポートを使ってください。HTTP プロキシへの認証には、ProxyAuthScheme、ProxyUser、およびProxyPassword を使ってください。
ファイアウォールを通過し、ユーザーのクエリをネットワークリソースに中継するために使用されるプロキシのIP アドレス、DNS 名、またはホスト名を識別します。
プロキシベースのファイアウォール(またはプロキシファイアウォール)は、ユーザーのリクエストとそれがアクセスするリソースの間に介在するネットワークセキュリティデバイスです。 プロキシは認証済みのユーザーのリクエストを受け取り、ファイアウォールを通過して適切なサーバーにリクエストを送信します。
プロキシは、リクエストを送信したユーザーに代わってデータバケットを評価し転送するため、ユーザーはサーバーに直接接続することなく、プロキシのみに接続します。
プロキシベースのファイアウォールで使用するTCP ポートを指定します。
プロキシベースのファイアウォール(またはプロキシファイアウォール)は、ユーザーのリクエストとそれがアクセスするリソースの間に介在するネットワークセキュリティデバイスです。 プロキシは認証済みのユーザーのリクエストを受け取り、ファイアウォールを通過して適切なサーバーにリクエストを送信します。
プロキシは、リクエストを送信したユーザーに代わってデータバケットを評価し転送するため、ユーザーはサーバーに直接接続することなく、プロキシのみに接続します。
プロキシベースのファイアウォールに認証するアカウントのユーザーID を識別します。
プロキシベースのファイアウォール(またはプロキシファイアウォール)は、ユーザーのリクエストとそれがアクセスするリソースの間に介在するネットワークセキュリティデバイスです。 プロキシは認証済みのユーザーのリクエストを受け取り、ファイアウォールを通過して適切なサーバーにリクエストを送信します。
プロキシは、リクエストを送信したユーザーに代わってデータバケットを評価し転送するため、ユーザーはサーバーに直接接続することなく、プロキシのみに接続します。
プロキシベースのファイアウォールで認証するユーザーアカウントのパスワードを指定します。
プロキシベースのファイアウォール(またはプロキシファイアウォール)は、ユーザーのリクエストとそれがアクセスするリソースの間に介在するネットワークセキュリティデバイスです。 プロキシは認証済みのユーザーのリクエストを受け取り、ファイアウォールを通過して適切なサーバーにリクエストを送信します。
プロキシは、リクエストを送信したユーザーに代わってデータバケットを評価し転送するため、ユーザーはサーバーに直接接続することなく、プロキシのみに接続します。
このセクションでは、本プロバイダーの接続文字列で設定可能なProxy プロパティの全リストを提供します。
| プロパティ | 説明 |
| ProxyAutoDetect | provider が、手動で指定されたプロキシサーバーを使用するのではなく、既存のプロキシサーバー構成についてシステムプロキシ設定をチェックするかどうかを指定します。 |
| ProxyServer | HTTP トラフィックをルートするプロキシサーバーのホストネームもしくはIP アドレス。 |
| ProxyPort | クライアントとの間でHTTP トラフィックをルーティングするために予約された、指定されたプロキシサーバー(ProxyServer 接続プロパティで設定)のTCP ポート。 |
| ProxyAuthScheme | ProxyServer 接続プロパティで指定されたプロキシサーバーに対して認証する際にprovider が使用する認証方法を指定します。 |
| ProxyUser | ProxyServer 接続プロパティで指定されたプロキシサーバーに登録されているユーザーアカウントのユーザー名。 |
| ProxyPassword | ProxyUser 接続プロパティで指定されたユーザーに紐付けられたパスワード。 |
| ProxySSLType | ProxyServer 接続プロパティで指定されたプロキシサーバーに接続する際に使用するSSL タイプ。 |
| ProxyExceptions | ProxyServer 接続プロパティで設定されたプロキシサーバー経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。 |
provider が、手動で指定されたプロキシサーバーを使用するのではなく、既存のプロキシサーバー構成についてシステムプロキシ設定をチェックするかどうかを指定します。
この接続プロパティをTrue に設定すると、Sync App は既存のプロキシサーバー構成についてシステムプロキシ設定をチェックします(プロキシサーバーの詳細を手動で入力する必要はありません)。
この接続プロパティは他のプロキシ設定より優先されます。特定のプロキシサーバーに接続するためにSync App を手動で構成する場合は、False に設定します。
HTTP プロキシへの接続には、ProxyServer を参照してください。SOCKS やトンネリングなどの他のプロキシには、FirewallType を参照してください。
HTTP トラフィックをルートするプロキシサーバーのホストネームもしくはIP アドレス。
ProxyAutoDetect がFalse に設定されている場合、Sync App はこの接続プロパティで指定されたプロキシサーバーを通じてのみHTTP トラフィックをルーティングします。ProxyAutoDetect がTrue に設定されている場合(デフォルト)、Sync App は代わりにシステムプロキシ設定で指定されたプロキシサーバーを介してHTTP トラフィックをルーティングします。
クライアントとの間でHTTP トラフィックをルーティングするために予約された、指定されたプロキシサーバー(ProxyServer 接続プロパティで設定)のTCP ポート。
ProxyAutoDetect がFalse に設定されている場合、Sync App はこの接続プロパティで指定されたプロキシサーバーポートを通じてのみHTTP トラフィックをルーティングします。ProxyAutoDetect がTrue に設定されている場合(デフォルト)、Sync App は代わりにシステムプロキシ設定で指定されたプロキシサーバーポートを介してHTTP トラフィックをルーティングします。
その他のプロキシタイプについては、FirewallType を参照してください。
ProxyServer 接続プロパティで指定されたプロキシサーバーに対して認証する際にprovider が使用する認証方法を指定します。
認証タイプは次のいずれかです。
"NONE" 以外のすべての値については、ProxyUser およびProxyPassword 接続プロパティも設定する必要があります。
SOCKS 5 認証のような他の認証タイプを使用するには、FirewallType を参照してください。
ProxyServer 接続プロパティで指定されたプロキシサーバーに登録されているユーザーアカウントのユーザー名。
ProxyUser および ProxyPassword 接続プロパティは、ProxyServer で指定されたHTTP プロキシに対して接続よび認証するために使用されます。
ProxyAuthScheme で利用可能な認証タイプを1つ選択した後、このプロパティを以下のように設定します。
| ProxyAuthScheme の値 | ProxyUser に設定する値 |
| BASIC | プロキシサーバーに登録されているユーザーのユーザー名。 |
| DIGEST | プロキシサーバーに登録されているユーザーのユーザー名。 |
| NEGOTIATE | プロキシサーバーが属するドメインまたは信頼されたドメイン内の有効なユーザーであるWindows ユーザーのユーザー名。user@domain またはdomain\user の形式で指定。 |
| NTLM | プロキシサーバーが属するドメインまたは信頼されたドメイン内の有効なユーザーであるWindows ユーザーのユーザー名。user@domain またはdomain\user の形式で指定。 |
| NONE | ProxyPassword 接続プロパティは設定しないでください。 |
Sync App は、ProxyAutoDetect がFalse に設定されている場合にのみ、このユーザー名を使用します。ProxyAutoDetect がTrue に設定されている場合(デフォルト)、Sync App は代わりにシステムのプロキシ設定で指定されているユーザー名を使用します。
ProxyUser 接続プロパティで指定されたユーザーに紐付けられたパスワード。
ProxyUser および ProxyPassword 接続プロパティは、ProxyServer で指定されたHTTP プロキシに対して接続よび認証するために使用されます。
ProxyAuthScheme で利用可能な認証タイプを1つ選択した後、このプロパティを以下のように設定します。
| ProxyAuthScheme の値 | ProxyPassword に設定する値 |
| BASIC | ProxyUser で指定したプロキシサーバーユーザーに紐付けられたパスワード。 |
| DIGEST | ProxyUser で指定したプロキシサーバーユーザーに紐付けられたパスワード。 |
| NEGOTIATE | ProxyUser で指定したWindows ユーザーアカウントに紐付けられたパスワード。 |
| NTLM | ProxyUser で指定したWindows ユーザーアカウントに紐付けられたパスワード。 |
| NONE | ProxyPassword 接続プロパティは設定しないでください。 |
SOCKS 5 認証もしくは、トンネリングは、FirewallType を参照してください。
Sync App は、ProxyAutoDetect がFalse に設定されている場合にのみ、このパスワードを使用します。ProxyAutoDetect がTrue に設定されている場合(デフォルト)、Sync App は代わりにシステムのプロキシ設定で指定されているパスワードを使用します。
ProxyServer 接続プロパティで指定されたプロキシサーバーに接続する際に使用するSSL タイプ。
このプロパティは、ProxyServer で指定されたHTTP プロキシへの接続にSSL を使用するかどうかを決定します。この接続プロパティには、以下の値を設定できます。
| AUTO | デフォルト設定。ProxyServer がHTTPS URL に設定されている場合、Sync App は、TUNNEL オプションを使用します。ProxyServer がHTTP URL に設定されている場合、コンポーネントはNEVER オプションを使用します。 |
| ALWAYS | 接続は、常にSSL 有効となります。 |
| NEVER | 接続は、SSL 有効になりません。 |
| TUNNEL | 接続はトンネリングプロキシ経由で行われます。プロキシサーバーがリモートホストへの接続を開き、プロキシを経由して通信が行われます。 |
ProxyServer 接続プロパティで設定されたプロキシサーバー経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。
ProxyServer は、このプロパティで定義されたアドレスを除くすべてのアドレスに使用されます。セミコロンを使用してエントリを区切ります。
Sync App はデフォルトでシステムプロキシ設定を使用するため、それ以上の設定は必要ありません。この接続にプロキシ例外を明示的に設定する場合は、ProxyAutoDetect をFalse に設定します。
このセクションでは、本プロバイダーの接続文字列で設定可能なLogging プロパティの全リストを提供します。
| プロパティ | 説明 |
| LogModules | ログファイルに含めるコアモジュールを指定します。セミコロンで区切られたモジュール名のリストを使用します。デフォルトでは、すべてのモジュールがログに記録されます。 |
ログファイルに含めるコアモジュールを指定します。セミコロンで区切られたモジュール名のリストを使用します。デフォルトでは、すべてのモジュールがログに記録されます。
このプロパティは、含めるログモジュールを指定することでログファイルの内容をカスタマイズすることができます。 ログモジュールは、クエリ実行、メタデータ、SSL 通信などの異なる領域にログ情報を分類します。 各モジュールは4文字のコードで表され、文字の名前の場合は末尾にスペースが必要なものもあります。
例えば、EXEC はクエリ実行をログに記録し、INFO は一般的なプロバイダーメッセージをログに記録します。 複数のモジュールを含めるには、次のように名前をセミコロンで区切ります:INFO;EXEC;SSL。
Verbosity 接続プロパティは、このプロパティで指定されたモジュールベースのフィルタリングよりも優先されます。 Verbosity レベルを満たし、指定されたモジュールに属するログエントリのみが記録されます。 利用可能なすべてのモジュールをログファイルに含めるには、このプロパティを空白のままにします。
利用可能なモジュールの完全なリストとログの設定に関する詳細な手引きについては、ログ の「高度なログの記録」セクションを参照してください。
このセクションでは、本プロバイダーの接続文字列で設定可能なSchema プロパティの全リストを提供します。
| プロパティ | 説明 |
| Location | テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリの場所を指定します。サービスの要件に応じて、これは絶対パスまたは相対パスのいずれかで表されます。 |
| BrowsableSchemas | レポートされるスキーマを利用可能なすべてのスキーマのサブセットに制限するオプション設定。例えば、 BrowsableSchemas=SchemaA,SchemaB,SchemaC です。 |
| Tables | レポートされるテーブルを利用可能なすべてのテーブルのサブセットに制限するオプション設定。例えば、 Tables=TableA,TableB,TableC です。 |
| Views | レポートされたビューを使用可能なテーブルのサブセットに制限するオプション設定。例えば、 Views=ViewA,ViewB,ViewC です。 |
テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリの場所を指定します。サービスの要件に応じて、これは絶対パスまたは相対パスのいずれかで表されます。
Location プロパティは、定義をカスタマイズしたり(例えば、カラム名を変更する、カラムを無視するなど)、新しいテーブル、ビュー、またはストアドプロシージャでデータモデルを拡張する場合にのみ必要です。
指定しない場合、デフォルトの場所は%APPDATA%\\CData\\Box Data Provider\\Schema となり、%APPDATA%はユーザーのコンフィギュレーションディレクトリに設定されます:
| プラットフォーム | %APPDATA% |
| Windows | APPDATA 環境変数の値 |
| Linux | ~/.config |
レポートされるスキーマを利用可能なすべてのスキーマのサブセットに制限するオプション設定。例えば、 BrowsableSchemas=SchemaA,SchemaB,SchemaC です。
利用可能なデータベーススキーマをすべてリストすると余分な時間がかかり、パフォーマンスが低下します。 接続文字列にスキーマのリストを指定することで、時間を節約しパフォーマンスを向上させることができます。
レポートされるテーブルを利用可能なすべてのテーブルのサブセットに制限するオプション設定。例えば、 Tables=TableA,TableB,TableC です。
データベースによっては、利用可能なすべてのテーブルをリストするのに時間がかかり、パフォーマンスが低下する場合があります。 接続文字列にテーブルのリストを指定することで、時間を節約しパフォーマンスを向上させることができます。
利用可能なテーブルがたくさんあり、すでに作業したいテーブルが決まっている場合、このプロパティを使用して対象のテーブルのみに表示を制限することができます。これを行うには、カンマ区切りのリストで使用したいテーブルを指定します。各テーブルは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space` です。
Note:複数のスキーマまたはカタログを持つデータソースに接続する場合は、表示する各テーブルを完全修飾名で指定する必要があります。これにより、複数のカタログやスキーマに存在するテーブルが混同されることを防ぎます。
レポートされたビューを使用可能なテーブルのサブセットに制限するオプション設定。例えば、 Views=ViewA,ViewB,ViewC です。
データベースによっては、利用可能なすべてのビューをリストするのに時間がかかり、パフォーマンスが低下する場合があります。 接続文字列にビューのリストを指定することで、時間を節約しパフォーマンスを向上させることができます。
利用可能なビューがたくさんあり、すでに作業したいビューが決まっている場合、このプロパティを使用して対象のビューのみに表示を制限することができます。これを行うには、カンマ区切りのリストで使用したいビューを指定します。各ビューは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space` です。
Note:複数のスキーマまたはカタログを持つデータソースに接続する場合は、確認する各ビューを完全修飾名で指定する必要があります。これにより、複数のカタログやスキーマに存在するビューが混同されることを防ぎます。
このセクションでは、本プロバイダーの接続文字列で設定可能なMiscellaneous プロパティの全リストを提供します。
| プロパティ | 説明 |
| AsUserId | The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts. |
| DirectoryRetrievalDepth | Folders およびFiles テーブルをクエリするフォルダの深度レベル。 |
| ExposeCollectionViews | Determines whether to expose every collection in your Box account as separate views. |
| IncludeCustomFields | メタデータテンプレートをFiles テーブルのカスタムカラムとして公開する必要がある場合にはtrue に設定します。 |
| MaxRows | 集計やGROUP BY を使用しないクエリで返される最大行数を指定します。 |
| Other | 特定のユースケースに対して追加の隠しプロパティを指定します。これらは通常のprovider の機能では必要ありません。複数のプロパティを定義するには、セミコロンで区切られたリストを使用します。 |
| PseudoColumns | テーブルカラムとして公開する擬似カラムを指定します。'TableName=ColumnName;TableName=ColumnName' という形式を使用します。デフォルトは空の文字列で、このプロパティを無効にします。 |
| Timeout | provider がタイムアウトエラーを返すまでにサーバーからの応答を待機する最大時間を秒単位で指定します。デフォルトは60秒です。タイムアウトを無効にするには0を設定します。 |
| UserDefinedViews | カスタムビューを定義するJSON 構成ファイルへのファイルパスを指定します。provider は、このファイルで指定されたビューを自動的に検出して使用します。 |
The Id of the user you want to impersonate. Only works with Admin, Co-Admin and Service Accounts.
If you specify a user id for this property, you can act on behalf of another user by leveraging the as-user Box header. The values specified in the pseudo-columns of tables/views or the values specified in stored procedures parameters take higher precedence over the value specified in this property.
Folders およびFiles テーブルをクエリするフォルダの深度レベル。
このプロパティは接続文字列で設定する必要があります。設定しない場合、ドライバーはデフォルトのDepth=5 を使用します。
Determines whether to expose every collection in your Box account as separate views.
If you set this property to 'true', you can query files and folders from the corresponding Box collection.
メタデータテンプレートをFiles テーブルのカスタムカラムとして公開する必要がある場合にはtrue に設定します。
メタデータテンプレートをFiles テーブルのカスタムカラムとして公開する必要がある場合にはtrue に設定します。
集計やGROUP BY を使用しないクエリで返される最大行数を指定します。
このプロパティは、集計やGROUP BY 句を含まないクエリに対してSync App が返す行数の上限を設定します。 この制限により、クエリがデフォルトで過度に大きな結果セットを返さないようにします。
クエリにLIMIT 句が含まれている場合、クエリで指定された値がMaxRows 設定よりも優先されます。 MaxRows が"-1" に設定されている場合、LIMIT 句が明示的にクエリに含まれていない限り、行の制限は行われません。
このプロパティは、非常に大きなデータセットを返す可能性のあるクエリを実行する際に、パフォーマンスを最適化し過剰なリソース消費を防ぐのに役立ちます。
特定のユースケースに対して追加の隠しプロパティを指定します。これらは通常のprovider の機能では必要ありません。複数のプロパティを定義するには、セミコロンで区切られたリストを使用します。
このプロパティは、シニアユーザーが特定のシナリオに対して隠しプロパティを設定できるようにします。 これらの設定は通常のユースケースには必要ありませんが、特定の要件に対応したり、追加の機能を提供したりすることができます。 複数のプロパティをセミコロン区切りのリストで定義できます。
Note: 特定のシナリオや問題に対処するためにサポートチームから助言があった場合にのみ、これらのプロパティを設定することを強く推奨します。
複数のプロパティをセミコロン区切りリストで指定します。
| DefaultColumnSize | データソースがメタデータにカラムの長さを提供しない場合に、文字列フィールドのデフォルトの長さを設定します。デフォルト値は2000です。 |
| ConvertDateTimeToGMT | 日時の値を、マシンのローカルタイムではなくGMT グリニッジ標準時に変換するかどうかを決定します。 |
| RecordToFile=filename | 基底のソケットデータ転送を指定のファイルに記録します。 |
テーブルカラムとして公開する擬似カラムを指定します。'TableName=ColumnName;TableName=ColumnName' という形式を使用します。デフォルトは空の文字列で、このプロパティを無効にします。
このプロパティを使用すると、Sync App がテーブルカラムとして公開する擬似カラムを定義できます。
個々の擬似カラムを指定するには、以下の形式を使用します。"Table1=Column1;Table1=Column2;Table2=Column3"
すべてのテーブルのすべての擬似カラムを含めるには、次のようにします:"*=*"
provider がタイムアウトエラーを返すまでにサーバーからの応答を待機する最大時間を秒単位で指定します。デフォルトは60秒です。タイムアウトを無効にするには0を設定します。
このプロパティは、Sync App が操作をキャンセルする前に操作の完了を待機する最大時間を秒単位で制御します。 操作の完了前にタイムアウト時間が経過すると、Sync App は操作をキャンセルして例外をスローします。
タイムアウトは、クエリや操作全体ではなくサーバーとの個々の通信に適用されます。 例えば、各ページング呼び出しがタイムアウト制限内に完了する場合、クエリは60秒を超えて実行を続けることができます。
このプロパティを0に設定するとタイムアウトが無効になり、操作が成功するか、サーバー側のタイムアウト、ネットワークの中断、またはサーバーのリソース制限などの他の条件で失敗するまで無期限に実行されます。 このプロパティは慎重に使用してください。長時間実行される操作がパフォーマンスを低下させたり、応答しなくなる可能性があるためです。
カスタムビューを定義するJSON 構成ファイルへのファイルパスを指定します。provider は、このファイルで指定されたビューを自動的に検出して使用します。
このプロパティを使用すると、UserDefinedViews.json というJSON 形式の構成ファイルを通じてカスタムビューを定義および管理できます。 これらのビューはSync App によって自動的に認識され、標準のデータベースビューのようにカスタムSQL クエリを実行できるようになります。 JSON ファイルは、各ビューをルート要素として定義し、その子要素として"query" を持ちます。この"query" にはビューのSQL クエリが含まれています。次に例を示します。
{
"MyView": {
"query": "SELECT * FROM Files WHERE MyColumn = 'value'"
},
"MyView2": {
"query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
}
}
このプロパティを使用して、1つのファイルに複数のビューを定義し、ファイルパスを指定できます。 例:UserDefinedViews=C:\Path\To\UserDefinedViews.json。 このプロパティを使用すると、指定されたビューのみがSync App によって検知されます。
詳しくは、ユーザー定義ビュー を参照してください。