36.108 SET_AUTHENTICATION_RESULTプロシージャ

このプロシージャは、アプリケーションのカスタム認証ファンクション(資格証明の検証ファンクション)からコールできます。このプロシージャに渡されたステータスは、「ログイン・アクセス・ログ」にログ出力されます。

構文

APEX_UTIL.SET_AUTHENTICATION_RESULT(
    p_code IN NUMBER);

パラメータ

表36-92 SET_AUTHENTICATION_RESULTのパラメータ

パラメータ 説明

p_code

開発者が選択するすべての数値。このプロシージャを使用してセッションでこの値が設定された後、APEX_UTIL.GET_AUTHENTICATION_RESULTファンクションを使用して取得できます。

このプロシージャを使用する1つの方法に、アプリケーション認証スキームにプロシージャを含める方法があります。この例は、テキストおよび数値ステータス値がどのようにロギング用に登録できるかについて説明します。この例では、資格証明の検証は実行されません。テキストおよび数値ステータス値がどのようにロギング用に登録できるかについてのみ説明します。このプロシージャを使用するステータス設定は、ワークスペースおよびサイト管理者に対して使用可能であるこのビューのapex_user_access_logビューおよびレポートに表示されることに注意してください。

CREATE OR REPLACE FUNCTION MY_AUTH(
    p_username IN VARCHAR2,
    p_password IN VARCHAR2)
RETURN BOOLEAN
IS
BEGIN
    APEX_UTIL.SET_CUSTOM_AUTH_STATUS(p_status=>'User:'||p_username||' is back.');
    IF UPPER(p_username) = 'GOOD' THEN
        APEX_UTIL.SET_AUTHENTICATION_RESULT(24567);
        RETURN TRUE;
    ELSE
        APEX_UTIL.SET_AUTHENTICATION_RESULT(-666);
        RETURN FALSE;
    END IF;
END;