是否可以 create/manage 来自内部的用户和 Oracle APEX 应用程序?
Is it possible to create/manage a user from inside and Oracle APEX application?
我在 APEX 中开发了一个应用程序供我公司的一些工程师使用,但他们每周两次左右打电话给我,要求我添加另一个用户。有什么方法可以将用户创建页面构建到 APEX 应用程序中,以便它可以完全由用户处理吗?
当然可以。如果要创建 APEX 用户,可以使用 APEX_UTIL.CREATE_USER
procedure.
根据具体情况,更常见的做法是创建您自己的 user
table 自定义身份验证例程,然后修改您的应用程序以使用该自定义身份验证例程,而不是依赖 APEX 用户。这往往更容易管理更复杂的权限(例如,支持多个不同角色的应用程序)或与其他身份验证提供程序(如 LDAP/Active Directory)集成。
要在 APEX 环境之外创建新用户,您可以使用 PL/SQL。确保将安全组设置为将为其创建新用户的工作区 ID。 运行此语句为数据库系统用户
请参阅下面的代码片段:
declare
l_workspace_id number;
l_group_id number;
begin
[...]
l_workspace_id := apex_util.find_security_group_id('Your Workspace Name');
apex_util.set_security_group_id(l_workspace_id);
l_group_id := apex_util.get_group_id('Your User-Group');
apex_util.create_user(p_user_name => 'Your User-Name',
p_email_address => 'eMail Address',
p_first_name => '...',
p_last_name => '...',
p_default_date_format => '...',
p_web_password => '...',
p_group_ids => l_group_id,
p_default_schema => '...');
[...]
end;
我在 APEX 中开发了一个应用程序供我公司的一些工程师使用,但他们每周两次左右打电话给我,要求我添加另一个用户。有什么方法可以将用户创建页面构建到 APEX 应用程序中,以便它可以完全由用户处理吗?
当然可以。如果要创建 APEX 用户,可以使用 APEX_UTIL.CREATE_USER
procedure.
根据具体情况,更常见的做法是创建您自己的 user
table 自定义身份验证例程,然后修改您的应用程序以使用该自定义身份验证例程,而不是依赖 APEX 用户。这往往更容易管理更复杂的权限(例如,支持多个不同角色的应用程序)或与其他身份验证提供程序(如 LDAP/Active Directory)集成。
要在 APEX 环境之外创建新用户,您可以使用 PL/SQL。确保将安全组设置为将为其创建新用户的工作区 ID。 运行此语句为数据库系统用户 请参阅下面的代码片段:
declare
l_workspace_id number;
l_group_id number;
begin
[...]
l_workspace_id := apex_util.find_security_group_id('Your Workspace Name');
apex_util.set_security_group_id(l_workspace_id);
l_group_id := apex_util.get_group_id('Your User-Group');
apex_util.create_user(p_user_name => 'Your User-Name',
p_email_address => 'eMail Address',
p_first_name => '...',
p_last_name => '...',
p_default_date_format => '...',
p_web_password => '...',
p_group_ids => l_group_id,
p_default_schema => '...');
[...]
end;