注:

使用 APEX 数据库从 PL/SQL 调用 Oracle 身份域 REST API

简介

本教程以此处提到的 Oracle A Team 博客为基础,它将帮助您提供在 Oracle 身份域中设置此功能的引导式方法。

我们将使用 Oracle APEX 数据库执行 SQL 脚本,该脚本将进行 REST 调用以从 Oracle 身份域获取访问令牌,然后进行调用以创建用户、查询组成员资格和检索用户概要信息属性。PL/SQL 代码使用 APEX 5.1 和程序包 APEX_WEBSERVICE 来调用身份域,使用 APEX_JSON 来解析 JSON 响应。

注意:我们使用的是 Oracle APEX 数据库,该数据库默认情况下将包含 APEX 程序包。如果有必需的 APEX 程序包,则可以在数据库上运行 SQL 脚本。

目标

使用 SQL 程序包使用 APEX 数据库调用身份域端点。

先决条件

对任何身份域的 OCI IAM 管理员访问。

任务 1:从 OCI 启动 APEX 实例

  1. 使用管理员账户登录 Oracle 身份域,搜索 APEX 应用程序开发,选择要创建实例的区间,然后单击下面的创建 APEX 服务

    图像 1

  2. 在配置向导中,提供基本信息

    图像 18

  3. 在下一节的配置 APEX 服务中,默认保留所有内容,除非您有任何特殊要求。

    图像 3

  4. 在下一节中,为 ADMIN 帐户创建口令。

    图像 4

  5. 在“网络访问”部分中选择从任何位置进行安全访问,并在通知部分中提供联系人电子邮件。最后,单击创建 APEX 服务以启动 APEX 服务。

    图像 5

  6. 创建服务并变为可用后,单击启动 APEX 选项卡,单击管理服务并使用在步骤 3 中创建的 ADMIN 用户密码登录。

    图像 7

    图像 8

  7. 登录后,单击创建工作区,然后在新建方案下提供提示所需信息,然后单击创建工作区

    图像 9

    图像 10

:请注意在更新 SQL 脚本时需要这些值。

任务 2:在 OCI IAM 中注册机密应用程序

我们将按如下所示注册机密应用程序 OCI IAM 域(对于测试,我们已使用默认域)。

  1. 登录到身份和安全下的身份域,然后单击应用程序

    图片 4

  2. 选择机密应用程序,然后单击启动工作流

    图片 5

  3. 将名称添加到应用程序,然后单击下一步

    图像 17

  4. 选择客户端身份证明作为授权类型,然后单击下一步

    图像 19

  5. 单击完成

    图片 8

  6. 单击激活应用程序

    图像 20

  7. 请注意 PL/SQL 脚本中使用的客户端 ID 和密钥。

    图像 21

任务 3:更新 SQL 脚本文件并对其进行编译

  1. 此处下载 SQL 脚本。

  2. 在任何文本编辑器中打开 SQL 文件,按照文件中的指示,使用在 1.6 中创建的方案名称更新文件。还在任务 2 下创建的文件中更新 Oracle Identity Cloud Service 应用程序详细信息并保存该详细信息。

    图片 11

  3. 在 APEX 实例中,单击启动数据库操作选项卡,然后单击 SQL

    图像 6

  4. 复制更新的 SQL 脚本,然后将其粘贴到工作表上。

    :应在左侧面板上选择 ADMIN 选项。

  5. 编译脚本,您应该会看到一条成功消息。

    图像 13

  6. 导航器更改为方案名称,然后在所有对象下,您应该看到客户机软件包,如下所示。

    图像 14

任务 4:运行过程从身份域获取授权令牌

  1. IDCS 客户机(正文)中,运行过程 get_authz_token ,应获取类似于以下映像的输出。

    图像 15

    图像 16

:我们从身份域收到的令牌标志着我们能够成功连接到身份域,现在您可以继续,并根据您的用例使用其他预构建过程和函数。

从 PL/SQL 调用 Oracle Identity Cloud Service REST API

确认

作者 - Chetan Soni(云解决方案工程师)

更多学习资源

探索 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 频道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。

有关产品文档,请访问 Oracle 帮助中心