2.5 IS_ROLE_REMOVED_FROM_USERファンクション
このファンクションは、ロールがユーザーから削除されているかどうかを確認します。ユーザーの新しいロールIDのリストから特定のロールが削除されている場合、このファンクションはTRUE
を返します。
構文
APEX_ACL.IS_ROLE_REMOVED_FROM_USER (
p_application_id IN NUMBER DEFAULT apex_application.g_flow_id,
p_user_name IN VARCHAR2,
p_role_static_id IN VARCHAR2,
p_role_ids IN apex_t_number )
RETURN BOOLEAN;
パラメータ
表2-5 IS_ROLE_REMOVED_FROM_USERのパラメータ
パラメータ | 説明 |
---|---|
p_application_id |
ユーザーのロール・リストから特定のロールが削除されているかどうかを確認するためのアプリケーションID。デフォルトは、現在のアプリケーションです。 |
p_user_name |
確認するアプリケーション・ユーザーの大/小文字を区別しない名前。 |
p_role_static_id |
削除されているかどうかを確認するロールの静的IDの名前(大/小文字の区別なし)。 |
p_role_ids |
ユーザーに割り当てられているNUMBER型の新しいロールIDの配列。 |
例
次の例では、IS_ROLE_REMOVED_FROM_USER
ファンクションを使用して、ADMINISTRATOR
のロール静的IDが、アプリケーション255
のユーザー名SCOTT
の新しいロールID 2505704029884282
および345029884282
から削除されているかどうかを確認します。
DECLARE
is_role_removed boolean := false;
BEGIN
is_role_removed := apex_acl.is_role_removed_from_user (
p_application_id => 255,
p_user_name => 'SCOTT',
p_role_static_id => 'ADMINISTRATOR',
p_role_ids => apex_t_number( 2505704029884282, 345029884282 ) );
IF NOT is_role_removed THEN
raise_application_error(-20001, 'ADMINISTRATOR role is not removed from SCOTT.' );
END IF;
END;
親トピック: APEX_ACL