新用户的授权方案是什么?在oracle apex

时间:2017-04-17 03:49:25

标签: oracle-apex

FUNCTION my_auth (
    p_username IN varchar2,
    p_password IN varchar2)
RETURN BOOLEAN AS
    found number := 0;
BEGIN
    SELECT 1 INTO FOUND FROM users
            WHERE upper(email)=upper(p_username)
            AND upper(password)=upper(p_password)
            AND is_activated=1;
RETURN TRUE;
EXCEPTION
    WHEN NO_DATA_FOUND THEN 
RETURN FALSE;
END;

/ *我现在有三个用户' admin',' guest'其他' 并且具有以下授权管理,仅查看,编辑。 如果另一个用户在申请中注册他/她的授权。 我希望他将自动分配编辑权限。所有新用户都将获得编辑权限。我怎么能这样做?* /

1 个答案:

答案 0 :(得分:0)

您可以根据功能需要创建各种授权方案。 例如。您可以创建不同的授权方案,例如创建,更新,删除,只读等。

FUNCTION create_auth (p_username IN varchar2,
                      p_password IN varchar2)
  RETURN BOOLEAN AS
  found number := 0;
BEGIN
     SELECT 1 INTO FOUND FROM users
      WHERE upper(email)=upper(p_username)
        AND upper(password)=upper(p_password)
        AND is_activated=1
        AND ROLE='create';
     RETURN TRUE;
EXCEPTION
     WHEN NO_DATA_FOUND THEN 
RETURN FALSE;
END;

以上函数根据用户存在的角色返回true / false。 同样,您可以创建edit_auth(授权),然后可以编辑/更新用户角色,然后可以将该授权应用于页面的可编辑组件。 有关授权的更多信息,请查看http://docs.oracle.com/cd/E59726_01/doc.50/e39147/sec_authorization.htm#HTMDB25783

希望这会对你有帮助!