Oracle SQL Microsoft Graph 连接器
Oracle SQL Microsoft Graph 连接器允许组织发现本地 Oracle 数据库中的数据并编制索引。 连接器为 Microsoft Search 和 Microsoft Copilot 365 中的指定内容编制索引。 为了使索引与源数据保持同步,它支持定期完全爬网和增量爬网。 使用 Oracle SQL Microsoft Graph 连接器,还可以限制对某些用户的搜索结果的访问。
本文适用于配置、运行和监视 Oracle SQL Microsoft Graph 连接器的任何人。 它补充了常规设置过程,并显示仅适用于 Oracle SQL Microsoft Graph 连接器的说明。 它还包括有关 故障排除 和 限制的信息。
开始之前
安装连接器代理
若要访问本地第三方数据,必须安装和配置 Microsoft Graph 连接器代理。 有关详细信息,请参阅 安装 Microsoft Graph 连接器代理。
步骤 1:在Microsoft 365 管理中心中添加连接器
添加 Oracle SQL Microsoft Graph 连接器
按照常规 设置说明进行操作。
步骤 2:命名连接
按照常规 设置说明进行操作。
步骤 3:配置连接设置
若要将 Oracle SQL Microsoft Graph 连接器连接到数据源,必须配置要爬网的数据库服务器和本地 Microsoft Graph 连接器代理。 然后,可以使用所需的身份验证方法连接到数据库。
对于 Oracle SQL Microsoft Graph 连接器,需要指定主机名、端口和服务 (数据库) 名称以及首选的身份验证方法、用户名和密码。
如果服务名称不可用,并且使用 SID 进行连接,则可以使用以下命令之一派生服务名称, (作为 sys admin) 执行。
- 从 gv$session 中选择SERVICE_NAME,其中 sid in (从 v$MYSTAT) 中选择 sid;
- 选择sys_context ('userenv','service_name') 从双;
注意
数据库必须运行 Oracle 数据库版本 11g 或更高版本,连接器才能进行连接。 连接器支持托管在 Windows、Linux 和 Azure VM 平台上的 Oracle 数据库。
若要搜索数据库内容,必须在配置连接器时指定 SQL 查询。 这些 SQL 查询需要命名要编制索引的所有数据库列, (即源属性) ,包括需要执行以获取所有列的任何 SQL 联接。 若要限制对搜索结果的访问,必须在配置连接器时在 SQL 查询中指定访问控制 Lists (ACL) 。
步骤 3a:需要完全爬网 ()
在此步骤中,将配置运行数据库完全爬网的 SQL 查询。 完全爬网将选择要在其中选择“ 查询”、“ 搜索”或“ 检索”选项的所有列或属性。 还可以指定 ACL 列,以将搜索结果的访问限制为特定用户或组。
提示
若要获取所需的所有列,可以联接多个表。
选择 (必需) 的数据列和 ACL 列 (可选)
该示例演示了保存搜索数据的五个数据列的选择:orderId、orderTitle、orderDesc、createdDateTime 和 isDeleted。 若要设置每行数据的查看权限,可以选择选择以下 ACL 列:allowedUsers、allowedGroups、deniedUsers 和 deniedGroups。 对于所有这些数据列,可以选择 “查询”、“ 搜索”或“ 检索”选项。
选择此示例查询中所示的数据列。
SELECT OrderId, orderTitle, orderDesc, allowedUsers, allowedGroups, deniedUsers, deniedGroups, createdDateTime, isDeleted
.
若要管理对搜索结果的访问,可以在查询中指定一个或多个 ACL 列。 SQL 连接器允许你控制每个记录级别的访问。 可以选择对表中的所有记录使用相同的访问控制。 如果 ACL 信息存储在单独的表中,则可能必须与查询中的这些表进行联接。
下面介绍了上述查询中每个 ACL 列的用法。 以下列表介绍了四 种访问控制机制。
- allowedUsers:此选项指定可以访问搜索结果的用户 ID 列表。 在以下示例中,用户列表: john@contoso.com、 keith@contoso.com和 lisa@contoso.com 将仅有权访问 OrderId = 12 的记录。
- allowedGroups:此选项指定可以访问搜索结果的用户组。 在以下示例中,组 sales-team@contoso.com 只能访问 OrderId = 12 的记录。
- deniedUsers:此选项指定 无权 访问搜索结果的用户列表。 在以下示例中,用户 john@contoso.com 和 keith@contoso.com 无权访问 OrderId = 13 的记录,而其他人则有权访问此记录。
- deniedGroups:此选项 指定无权访问 搜索结果的用户组。 在以下示例中,对 OrderId = 15 的记录进行分组 engg-team@contoso.com 和 pm-team@contoso.com 无权访问,而其他人则有权访问此记录。
支持的数据类型
此表汇总了 Oracle SQL Microsoft Graph 连接器支持的数据类型。 该表还汇总了支持的 SQL 数据类型的索引数据类型。 若要详细了解Microsoft Graph 连接器支持的索引数据类型,请参阅有关 属性资源类型的文档。
类别 | 源数据类型 | 索引数据类型 |
---|---|---|
数字数据类型 | 数字 (p,0) | p <= 18) 的 int64 ( p > 18) 的双 (。 |
浮点数数据类型 | number (p,s) FLOAT (p) |
双。 |
日期数据类型 | 日期 时间戳 TIMESTAMP (n) |
datetime。 |
字符数据类型 | CHAR (n) VARCHAR VARCHAR2 长 CLOB NCLOB |
字符串。 |
Unicode 字符数据类型 | NCHAR NVARCHAR |
字符串。 |
RowID 数据类型 | ROWID UROWID |
字符串。 |
对于当前不直接支持的任何其他数据类型,需要将列显式强制转换为受支持的数据类型。
需要水印 ()
为了防止数据库过载,连接器使用完全爬网水印列对完全爬网查询进行批处理并恢复。 通过使用水印列的值,提取每个后续批,并从最后一个检查点恢复查询。 实质上,这是一种用于控制完全爬网的数据刷新的机制。
为水印创建查询代码段,如以下示例所示:
-
WHERE (CreatedDateTime > @watermark)
. 引用带有保留关键字 (keyword)@watermark
的水印列名称。 只能按升序对水印列进行排序。 -
ORDER BY CreatedDateTime ASC
. 按水印列按升序排序。
在下图所示的配置中, CreatedDateTime
是所选水印列。 若要提取第一批行,请指定水印列的数据类型。 在这种情况下,数据类型为 DateTime
。
第一个查询使用“CreatedDateTime > January 1, 1753 00:00:00” (DateTime 数据类型的最小值) 提取前 N 行数。 提取第一批后,如果行按升序排序,则批中返回的最高值 CreatedDateTime
将保存为检查点。 例如,2019 年 3 月 1 日 03:00:00。 然后在查询中使用“CreatedDateTime > 2019 年 3 月 1 日 03:00:00”提取下一批 N 行。
跳过软删除行 (可选)
若要将数据库中的软删除行从索引中排除,请指定软删除列名和值,该值指示该行已删除。
完全爬网:管理搜索权限
选择“ 管理权限 ”以选择各种访问控制 (ACL) 指定访问控制机制的列。 选择在完全爬网 SQL 查询中指定的列名称。
每个 ACL 列应为多值列。 这些多个 ID 值可以通过分隔符分隔,例如分号 (;) 、逗号 (、) 等。 需要在值分隔符字段中指定此 分隔符 。
支持将以下 ID 类型用作 ACL:
- 用户主体名称 (UPN) :UPN) (用户主体名称是采用电子邮件地址格式的系统用户的名称。 例如,UPN (: john.doe@domain.com) 由用户名 (登录名) 、@ 符号 (分隔符) 以及域名 (UPN 后缀) 组成。
- Microsoft Entra ID:在 Microsoft Entra ID,每个用户或组都有一个对象 ID,该 ID 类似于“e0d3ad3d-0000-1111-2222-3c5f5c52ab9b”
- Active Directory (AD) 安全 ID:在本地 AD 设置中,每个用户和组都有一个不可变的唯一安全标识符,该标识符类似于“S-1-5-21-3878594291-2115959936-132693609-65242”。
步骤 3b:增量爬网 (可选)
在此可选步骤中,提供 SQL 查询以运行数据库的增量爬网。 使用此查询,SQL 连接器确定自上次增量爬网以来对数据所做的任何更改。 与完全爬网一样,在 “查询”、“ 搜索”或“ 检索”选项之间进行选择。 指定在完整爬网查询中指定的同一组 ACL 列。
下图中的组件类似于完整爬网组件,但有一个例外。 在这种情况下,“ModifiedDateTime”是所选水印列。 查看 完整的爬网步骤 ,了解如何编写增量爬网查询,并参阅下图作为示例。
步骤 4:分配属性标签
按照常规 设置说明进行操作。
步骤 5:管理架构
按照常规 设置说明进行操作。
步骤 6:管理搜索权限
可以选择使用 在完全爬网屏幕中指定的 ACL ,也可以重写它们以使内容对每个人都可见。
步骤 7:选择刷新设置
Oracle SQL Microsoft Graph 连接器支持完整爬网和增量爬网的刷新计划。 建议同时设置这两者。
完整爬网计划可查找以前同步到Microsoft搜索索引的已删除行,以及从同步筛选器移出的任何行。 首次连接到数据库时,将运行完全爬网以同步从完整爬网查询检索到的所有行。 若要同步新行并进行更新,需要计划增量爬网。
步骤 8:查看连接
按照常规 设置说明进行操作。
限制
Oracle SQL Microsoft Graph 连接器在预览版中具有以下限制:
- 本地数据库必须运行 Oracle 数据库版本 11g 或更高版本。
- 仅使用用户主体名称 (UPN) 、Microsoft Entra ID或 Active Directory 安全性来支持 ACL。
- 不支持为数据库列内的丰富内容编制索引。 此类内容的示例包括 HTML、JSON、XML、Blob 和作为数据库列内的链接存在的文档分析。
疑难解答
发布连接后,可以在管理中心的“数据源”选项卡下查看状态。 若要了解如何进行更新和删除,请参阅 管理连接器。 可 在此处找到常见问题的故障排除步骤。
如果你有任何其他问题或想要提供反馈,请写信给我们 aka.ms/TalkToGraphConnectors。