Oracle9iAS Portal Developer Kit

get_privilege_level function

Contained in package wwsec_api.

Call this function to return the highest privilege that a user has on a specified object. It considers all groups to which the user belongs, and includes direct grants.

function get_privilege_level

(

p_object_type_name in varchar2,

p_name in varchar2,

p_owner in varchar2 default wwctx_api.get_product_schema,

p_reqd_auth_level in NUMBER default wwctx_api.REQUIRED_AUTHENTICATION_LEVEL

)

return number;

Version: Oracle Portal 3.0.6.6.5 or later

Parameters:

p_object_type_name

The name of the type of object referenced.

Note: These names can be specified with object_type_name constants. For example, ADMIN_OBJ, ITEM_OBJ, or another object type name.

Datatype: in varchar2

p_name

The unique name of the specific object.

Datatype: in varchar2

p_owner

The name of the schema that owns the Access Control List entry, or another name space discriminator.

Datatype: in varchar2
Default: wwctx_api.get_product_schema

p_reqd_auth_level

The minimum authentication level that a calling function requires in order to pass a privilege check.

The API fails the authorization check if the current authentication level (returned by wwctx_api.get_authentication_level) is less than the value of this parameter.

Note: If the object is granted PUBLIC access, the authentication level is not checked at all.

The default value for this parameter is REQUIRED_AUTHENTICATION_LEVEL and this is equivalent to PUBLIC_AUTHENTICATION. This implies that the user must be authenticated by the Single Sign-On Server for the authorization check to pass.

Portlets that require authorization fail the authorization check for a weakly authenticated user. If a portlet wants to display itself to a weakly authenticated user, it should pass p_reqd_auth_level as WEAK_AUTHENTICATION while invoking the authorization APIs.

Note: This parameter is available in Oracle Portal 3.0.9 or later.

Datatype: number
Default: wwctx_api.REQUIRED_AUTHENTICATION_LEVEL

Returns:

This function returns the code of the highest-level privilege the specified user has on the specified object. It returns null if the no privileges are defined for the specified object.

Exceptions:

This function raises no exceptions.

Example:

l_priv number;
l_priv := wwsec_api.get_privilege_level
(

p_object_type_name => wwsec_api.PAGE_OBJ,
p_name => '0/156',
p_reqd_auth_level=>wwctx_api.REQUIRED_AUTHENTICATION_LEVEL

);

Related topics

The PL/SQL API Reference is part of the Portal Developer Kit on Portal Studio