| Oracle Application Server Portal PL/SQL API Reference - 904 | |||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | |||||||
| SUMMARY: EXCEPTION | TYPE | CONSTANT | VARIABLE | FUNCTION/PROCEDURE | DETAIL: EXCEPTION | TYPE | CONSTANT | VARIABLE | FUNCTION/PROCEDURE | |||||||
This package contains procedures and functions for administering OracleAS Portal 10G security. Using these security APIs you can perform the following operations:
| Exception Summary | |
ACCESS_DENIED_EXCEPTION | |
CIRCULAR_REFERENCE_EXCEPTION | |
DEPRECATED_API_EXCEPTION | |
DUPLICATE_GRANTEE_EXCEPTION | |
DUPLICATE_GROUP_EXCEPTION | |
GROUP_MEMBER_EXCEPTION | |
GROUP_NOT_FOUND_EXCEPTION | |
GROUP_NOT_UNIQUE_EXCEPTION | |
INVALID_ARGUMENT_EXCEPTION | |
INVALID_AUTH_FUNC_EXCEPTION | |
INVALID_GRP_NAME_EXCEPTION | |
INVALID_PERSON_ID_EXCEPTION | |
INVALID_SITE_EXCEPTION | |
LDAP_CONNECTION_EXCEPTION | |
NO_ACCESSIBLE_OBJECT_EXCEPTION | |
NO_MANAGER_EXCEPTION | |
ORG_NOT_EXIST_EXCEPTION | |
UNEXPECTED_EXCEPTION | |
USER_EXISTS_EXCEPTION | |
USER_NOT_DELETABLE_EXCEPTION | |
USER_NOT_FOUND_EXCEPTION | |
VALUE_ERROR_EXCEPTION | |
| Type Summary | |
array | table |
grantee_array | table |
grantee_record | record |
idarray | table |
list_array | table |
list_member_array | table |
list_member_record | record |
list_record | record |
privilege_array | table |
username_type | subtype |
| Constant Summary | |
ACCESS_PRIV | wwsec_sys_priv$.privilege%type |
ADD_CUSTOM_PRIV | wwsec_sys_priv$.privilege%type |
ALL_OBJECTS | wwsec_sys_priv$.name%type |
ANYGROUP_CREATE | number |
ANYGROUP_MANAGE | number |
ANYGROUP_OBJ | wwsec_sys_priv$.object_type_name%type |
ANYLOG_EDIT | number |
ANYLOG_MANAGE | number |
ANYLOG_OBJ | wwsec_sys_priv$.object_type_name%type |
ANYLOG_VIEW | number |
ANYPAGE_ADD_ONLY_CUSTOM_CNT | number |
ANYPAGE_CREATE | number |
ANYPAGE_FULL_CUSTOM_CNT | number |
ANYPAGE_HIDE_SHOW_CUSTOM_CNT | number |
ANYPAGE_MANAGE | number |
ANYPAGE_MANAGE_CNT | number |
ANYPAGE_MANAGE_CNT_WITH_APP | number |
ANYPAGE_MANAGE_STYLE | number |
ANYPAGE_OBJ | wwsec_sys_priv$.object_type_name%type |
ANYPAGE_STYLE_CUSTOM | number |
ANYPAGE_VIEW | number |
ANYPORTLET_ACCESS | number |
ANYPORTLET_EDIT | number |
ANYPORTLET_EXECUTE | number |
ANYPORTLET_MANAGE | number |
ANYPORTLET_OBJ | wwsec_sys_priv$.object_type_name%type |
ANYPORTLET_PUBLISH | number |
ANYPROVIDER_CREATE | number |
ANYPROVIDER_EDIT | number |
ANYPROVIDER_EXECUTE | number |
ANYPROVIDER_MANAGE | number |
ANYPROVIDER_OBJ | wwsec_sys_priv$.object_type_name%type |
ANYPROVIDER_PUBLISH | number |
ANYSCHEMA_CREATE | number |
ANYSCHEMA_INSERT | number |
ANYSCHEMA_MANAGE | number |
ANYSCHEMA_MODIFY | number |
ANYSCHEMA_OBJ | wwsec_sys_priv$.object_type_name%type |
ANYSCHEMA_VIEW | number |
ANYSITE_CREATE | number |
ANYSITE_MANAGE | number |
ANYSITE_MANAGE_CLASSIFICATION | number |
ANYSITE_MANAGE_STYLE | number |
ANYSITE_MANAGE_TEMPLATE | number |
ANYSITE_MANAGE_TRANSLATION | number |
ANYSITE_OBJ | wwsec_sys_priv$.object_type_name%type |
ANYSITE_VIEW | number |
ANYSTYLE_CREATE | number |
ANYSTYLE_MANAGE | number |
ANYSTYLE_OBJ | wwsec_sys_priv$.object_type_name%type |
ANYSTYLE_PUBLISH | number |
ANYSTYLE_VIEW | number |
ANYTRANSPORTSET_EXECUTE | number |
ANYTRANSPORTSET_MANAGE | number |
ANYTRANSPORTSET_OBJ | wwsec_sys_priv$.object_type_name%type |
ANYUSER_CREATE | number |
ANYUSER_MANAGE | number |
ANYUSER_OBJ | wwsec_sys_priv$.object_type_name%type |
CREATE_PRIV | wwsec_sys_priv$.privilege%type |
CUSTOMIZE_PRIV | wwsec_sys_priv$.privilege%type |
DOCUMENT_MANAGE | number |
DOCUMENT_OBJ | wwsec_sys_priv$.object_type_name%type |
DOCUMENT_OWN | number |
DOCUMENT_VIEW | number |
EDIT_PRIV | wwsec_sys_priv$.privilege%type |
EXECUTE_PRIV | wwsec_sys_priv$.privilege%type |
FULL_CUSTOM_PRIV | wwsec_sys_priv$.privilege%type |
GLOBAL_GROUP | number(1) |
GRANTEE_GROUP | wwsec_sys_priv$.grantee_type%type |
GRANTEE_USER | wwsec_sys_priv$.grantee_type%type |
GROUP_AUTHENTICATED_USERS | number(1) |
GROUP_DBA | number(1) |
GROUP_IPORTAL_ADMINISTRATORS | number(1) |
GROUP_OBJ | wwsec_sys_priv$.object_type_name%type |
GROUP_OWN | number |
GROUP_PORTAL_PUBLISHERS | number(1) |
GROUP_TYPE_LIST | wwsec_group$.group_type%type |
GROUP_TYPE_ORG | wwsec_group$.group_type%type |
GROUP_WEBDB_ADMINISTRATORS | number(1) |
HIDDEN | number(1) |
HIDE_SHOW_CUSTOM_PRIV | wwsec_sys_priv$.privilege%type |
INSERT_PRIV | wwsec_sys_priv$.privilege%type |
ITEM_MANAGE | number |
ITEM_OBJ | wwsec_sys_priv$.object_type_name%type |
ITEM_OWN | number |
ITEM_VIEW | number |
LOV_EDIT | number |
LOV_EXECUTE | number |
LOV_OBJ | wwsec_sys_priv$.object_type_name%type |
MANAGE_CLASSIFICATION_PRIV | wwsec_sys_priv$.privilege%type |
MANAGE_CNT_PRIV | wwsec_sys_priv$.privilege%type |
MANAGE_CNT_WITH_APP_PRIV | wwsec_sys_priv$.privilege%type |
MANAGE_PRIV | wwsec_sys_priv$.privilege%type |
MANAGE_STYLE_PRIV | wwsec_sys_priv$.privilege%type |
MANAGE_TEMPLATE_PRIV | wwsec_sys_priv$.privilege%type |
MEMBER_TYPE_GROUP | wwsec_member$.member_type%type |
MEMBER_TYPE_USER | wwsec_member$.member_type%type |
MENU_EXECUTE | number |
MENU_OBJ | wwsec_sys_priv$.object_type_name%type |
MODIFY_PRIV | wwsec_sys_priv$.privilege%type |
NAVBAR_OBJ | wwsec_sys_priv$.object_type_name%type |
NAVBAR_OWN | number |
NO_PRIVILEGE | number |
NOT_HIDDEN | number(1) |
NOT_OWNER | number(1) |
OWN_PRIV | wwsec_sys_priv$.privilege%type |
OWNER | number(1) |
PAGE_ADD_ONLY_CUSTOM_CNT | number |
PAGE_FULL_CUSTOM_CNT | number |
PAGE_HIDE_SHOW_CUSTOM_CNT | number |
PAGE_MANAGE | number |
PAGE_MANAGE_CNT | number |
PAGE_MANAGE_CNT_WITH_APP | number |
PAGE_MANAGE_STYLE | number |
PAGE_OBJ | wwsec_sys_priv$.object_type_name%type |
PAGE_STYLE_CUSTOM | number |
PAGE_VIEW | number |
PORTLET_ACCESS | number |
PORTLET_EDIT | number |
PORTLET_EXECUTE | number |
PORTLET_MANAGE | number |
PORTLET_NON_LOCAL_ACCESS | number |
PORTLET_NON_LOCAL_EXECUTE | number |
PORTLET_NON_LOCAL_MANAGE | number |
PORTLET_NON_LOCAL_PUBLISH | number |
PORTLET_NONLOCAL_OBJ | wwsec_sys_priv$.object_type_name%type |
PORTLET_OBJ | wwsec_sys_priv$.object_type_name%type |
PORTLET_PUBLISH | number |
PROVIDER_EDIT | number |
PROVIDER_EXECUTE | number |
PROVIDER_MANAGE | number |
PROVIDER_OBJ | wwsec_sys_priv$.object_type_name%type |
PROVIDER_PUBLISH | number |
PUBLISH_PRIV | wwsec_sys_priv$.privilege%type |
SCHEMA_ADMIN | number(1) |
SCHEMA_BROWSEIN | number |
SCHEMA_BUILDIN | number |
SCHEMA_OBJ | wwsec_sys_priv$.object_type_name%type |
SCHEMA_OWNER | number(1) |
SEARCH_SUBTYPE_GROUP | varchar2(30) |
SEARCH_SUBTYPE_USER | varchar2(30) |
SEARCH_TYPE_UG | varchar2(30) |
SITE_MANAGE | number |
SITE_MANAGE_CLASSIFICATION | number |
SITE_MANAGE_STYLE | number |
SITE_MANAGE_TEMPLATE | number |
SITE_MANAGE_TRANSLATION | number |
SITE_OBJ | wwsec_sys_priv$.object_type_name%type |
SITE_SEPARATOR | varchar2(1) |
SITE_VIEW | number |
STYLE_CUSTOM_PRIV | wwsec_sys_priv$.privilege%type |
USER_PUBLIC | number(1) |
VIEW_PRIV | wwsec_sys_priv$.privilege%type |
WORKFLOW_EXECUTE | number |
WORKFLOW_MANAGE | number |
WORKFLOW_STATUS | number |
WORKFLOW_STATUS_AND_EXECUTE | number |
| Variable Summary | |
empty | array |
emptyidarray | idarray |
| Function/Procedure Summary | |
accessible_objects | array |
accessible_objects | array |
activate_portal_user | |
add_group_to_list | |
add_portal_user | number |
add_user_to_list | |
clear_package_cache | |
copy_privileges | |
create_list | number |
db_user | varchar2 |
deactivate_portal_user | |
delete_group_from_list | |
delete_list | |
delete_portal_user | |
delete_user_from_list | |
get_authorization_function | varchar2 |
get_defaultgroup | number |
get_granted_group_privilege | varchar2 |
get_granted_user_priv_code | number |
get_granted_user_privilege | varchar2 |
get_list_members | wwsec_api.list_member_array |
get_manager | varchar2 |
get_member_record | wwsec_member$%rowtype |
get_privilege_level | number |
get_public_objects | array |
grantee_list | grantee_array |
group_id | number |
group_info | wwsec_group$%rowtype |
group_name | varchar2 |
has_privilege | boolean |
has_privilege | boolean |
has_privilege | boolean |
id | number |
id_sso | number |
is_group_owner | number |
is_privilege_at_least | boolean |
is_privileged_by_auth_function | boolean |
is_user_in_direct_group | boolean |
is_user_in_group | boolean |
list_id | number |
lists | wwsec_api.list_array |
modify_portal_user | |
person_info | wwsec_person%rowtype |
person_info | wwsec_person%rowtype |
privilege_list | privilege_array |
publish_group | |
remove_group_acl | |
remove_user_acl | |
set_authorization_function | |
set_defaultgroup | |
set_group_acl | |
set_user_acl | |
update_group_acl | |
update_group_owner | |
update_list | |
update_user_acl | |
update_user_owner | |
user_in_groups | idarray |
user_name | varchar2 |
users_in_group | array |
| Exception Detail |
ACCESS_DENIED_EXCEPTION exception
CIRCULAR_REFERENCE_EXCEPTION exception
DEPRECATED_API_EXCEPTION exception
DUPLICATE_GRANTEE_EXCEPTION exception
DUPLICATE_GROUP_EXCEPTION exception
GROUP_MEMBER_EXCEPTION exception
GROUP_NOT_FOUND_EXCEPTION exception
GROUP_NOT_UNIQUE_EXCEPTION exception
INVALID_ARGUMENT_EXCEPTION exception
INVALID_AUTH_FUNC_EXCEPTION exception
INVALID_GRP_NAME_EXCEPTION exception
INVALID_PERSON_ID_EXCEPTION exception
INVALID_SITE_EXCEPTION exception
LDAP_CONNECTION_EXCEPTION exception
NO_ACCESSIBLE_OBJECT_EXCEPTION exception
NO_MANAGER_EXCEPTION exception
ORG_NOT_EXIST_EXCEPTION exception
UNEXPECTED_EXCEPTION exception
USER_EXISTS_EXCEPTION exception
USER_NOT_DELETABLE_EXCEPTION exception
USER_NOT_FOUND_EXCEPTION exception
VALUE_ERROR_EXCEPTION exception
| Type Detail |
type array is table of varchar2(2000) index by binary_integer
type grantee_array is table of grantee_record index by binary_integer
type grantee_record is record (
grantee_type wwsec_sys_priv$.grantee_type%type,
grantee_id number,
grantee_name wwsec_person$.user_name%type,
privilege wwsec_sys_priv$.privilege%type
)
grantee_type - indicates whether the privilege is granted to a
'USER' or a 'GROUP'grantee_id - the numeric identifier of the grantee - which may
be a user id or a group idgrantee_name - the name of the user or group represented by this
entryprivilege - the privilege granted to the user or grouptype idarray is table of number index by binary_integer
type list_array is table of list_record index by binary_integer
type list_member_array is table of list_member_record index by binary_integer
type list_member_record is record (
id wwsec_member$.id%type,
group_id wwsec_member$.group_id%type,
member_type wwsec_member$.member_type%type,
member_group_id wwsec_member$.member_group_id%type,
member_person_id wwsec_member$.member_person_id%type
)
id - an identifier for the member entrygroup_id - the identifier for the group to which this membership
belongsmember_type - indicates whether this membership entry is for a
GROUP member or a USER membermember_group_id - contains the identifier of the member group if the
member_type is GROUP; and is 0 otherwisemember_person_id - contains the identifier of the member user if the
member_type is USER; and is 0 otherwise
type list_record is record (
group_id wwsec_group$.id%type,
siteid wwsec_group$.site_id%type,
name wwsec_group$.name%type,
description wwsec_group$.description%type
)
group_id - the portal's numeric identifier for the groupsiteid - the numeric identifier for the content area to which the
group may be scoped; or 0 if not locally scopedname - the name of the groupdescription - a free-text description of the grouptype privilege_array is table of wwsec_privilege$%rowtype index by binary_integer
subtype username_type is wwsec_person$.user_name%type
| Constant Detail |
ACCESS_PRIV constant wwsec_sys_priv$.privilege%type := 'ACCESS'
ADD_CUSTOM_PRIV constant wwsec_sys_priv$.privilege%type := 'ADD_ONLY_CUSTOM_CONTENT'
ALL_OBJECTS constant wwsec_sys_priv$.name%type := 'ALL_OBJECTS'
ANYGROUP_CREATE constant number := 100
ANYGROUP_MANAGE constant number := 200
ANYGROUP_OBJ constant wwsec_sys_priv$.object_type_name%type := 'ANY_GROUP'
ANYLOG_EDIT constant number := 200
ANYLOG_MANAGE constant number := 300
ANYLOG_OBJ constant wwsec_sys_priv$.object_type_name%type := 'ANY_LOG'
ANYLOG_VIEW constant number := 100
ANYPAGE_ADD_ONLY_CUSTOM_CNT constant number := 500
ANYPAGE_CREATE constant number := 100
ANYPAGE_FULL_CUSTOM_CNT constant number := 600
ANYPAGE_HIDE_SHOW_CUSTOM_CNT constant number := 400
ANYPAGE_MANAGE constant number := 1000
ANYPAGE_MANAGE_CNT constant number := 900
ANYPAGE_MANAGE_CNT_WITH_APP constant number := 800
ANYPAGE_MANAGE_STYLE constant number := 700
ANYPAGE_OBJ constant wwsec_sys_priv$.object_type_name%type := 'ANY_PAGE'
ANYPAGE_STYLE_CUSTOM constant number := 300
ANYPAGE_VIEW constant number := 200
ANYPORTLET_ACCESS constant number := 200
ANYPORTLET_EDIT constant number := 400
ANYPORTLET_EXECUTE constant number := 300
ANYPORTLET_MANAGE constant number := 500
ANYPORTLET_OBJ constant wwsec_sys_priv$.object_type_name%type := 'ANY_PORTLET'
ANYPORTLET_PUBLISH constant number := 100
ANYPROVIDER_CREATE constant number := 100
ANYPROVIDER_EDIT constant number := 400
ANYPROVIDER_EXECUTE constant number := 200
ANYPROVIDER_MANAGE constant number := 500
ANYPROVIDER_OBJ constant wwsec_sys_priv$.object_type_name%type := 'ANY_PROVIDER'
ANYPROVIDER_PUBLISH constant number := 300
ANYSCHEMA_CREATE constant number := 100
ANYSCHEMA_INSERT constant number := 300
ANYSCHEMA_MANAGE constant number := 500
ANYSCHEMA_MODIFY constant number := 400
ANYSCHEMA_OBJ constant wwsec_sys_priv$.object_type_name%type := 'ANY_SCHEMA'
ANYSCHEMA_VIEW constant number := 200
ANYSITE_CREATE constant number := 100
ANYSITE_MANAGE constant number := 700
ANYSITE_MANAGE_CLASSIFICATION constant number := 500
ANYSITE_MANAGE_STYLE constant number := 300
ANYSITE_MANAGE_TEMPLATE constant number := 400
ANYSITE_MANAGE_TRANSLATION constant number := 600
ANYSITE_OBJ constant wwsec_sys_priv$.object_type_name%type := 'ANY_SITE'
ANYSITE_VIEW constant number := 200
ANYSTYLE_CREATE constant number := 100
ANYSTYLE_MANAGE constant number := 400
ANYSTYLE_OBJ constant wwsec_sys_priv$.object_type_name%type := 'ANY_STYLE'
ANYSTYLE_PUBLISH constant number := 200
ANYSTYLE_VIEW constant number := 300
ANYTRANSPORTSET_EXECUTE constant number := 200
ANYTRANSPORTSET_MANAGE constant number := 500
ANYTRANSPORTSET_OBJ constant wwsec_sys_priv$.object_type_name%type := 'ANY_TRANSPORTSET'
ANYUSER_CREATE constant number := 100
ANYUSER_MANAGE constant number := 200
ANYUSER_OBJ constant wwsec_sys_priv$.object_type_name%type := 'ANY_USER'
CREATE_PRIV constant wwsec_sys_priv$.privilege%type := 'CREATE'
CUSTOMIZE_PRIV constant wwsec_sys_priv$.privilege%type := 'CUSTOMIZE'
DOCUMENT_MANAGE constant number := 200
DOCUMENT_OBJ constant wwsec_sys_priv$.object_type_name%type := 'DOCUMENT'
DOCUMENT_OWN constant number := 300
DOCUMENT_VIEW constant number := 100
EDIT_PRIV constant wwsec_sys_priv$.privilege%type := 'EDIT'
EXECUTE_PRIV constant wwsec_sys_priv$.privilege%type := 'EXECUTE'
FULL_CUSTOM_PRIV constant wwsec_sys_priv$.privilege%type := 'FULL_CUSTOM_CONTENT'
GLOBAL_GROUP constant number(1) := 0
GRANTEE_GROUP constant wwsec_sys_priv$.grantee_type%type := 'GROUP'
GRANTEE_USER constant wwsec_sys_priv$.grantee_type%type := 'USER'
GROUP_AUTHENTICATED_USERS constant number(1) := 0
GROUP_DBA constant number(1) := 1
GROUP_IPORTAL_ADMINISTRATORS constant number(1) := GROUP_WEBDB_ADMINISTRATORS
GROUP_OBJ constant wwsec_sys_priv$.object_type_name%type := 'GROUP'
GROUP_OWN constant number := 100
GROUP_PORTAL_PUBLISHERS constant number(1) := 3
GROUP_TYPE_LIST constant wwsec_group$.group_type%type := 'LIST'
GROUP_TYPE_ORG constant wwsec_group$.group_type%type := 'ORG'
GROUP_WEBDB_ADMINISTRATORS constant number(1) := 2
HIDDEN constant number(1) := 1
HIDE_SHOW_CUSTOM_PRIV constant wwsec_sys_priv$.privilege%type := 'HIDE_SHOW_CUSTOM_CONTENT'
INSERT_PRIV constant wwsec_sys_priv$.privilege%type := 'INSERT'
ITEM_MANAGE constant number := 200
ITEM_OBJ constant wwsec_sys_priv$.object_type_name%type := 'ITEM'
ITEM_OWN constant number := 300
ITEM_VIEW constant number := 100
LOV_EDIT constant number := 200
LOV_EXECUTE constant number := 100
LOV_OBJ constant wwsec_sys_priv$.object_type_name%type := 'LOV'
MANAGE_CLASSIFICATION_PRIV constant wwsec_sys_priv$.privilege%type := 'MANAGE_CLASSIFICATION'
MANAGE_CNT_PRIV constant wwsec_sys_priv$.privilege%type := 'MANAGE_CONTENT'
MANAGE_CNT_WITH_APP_PRIV constant wwsec_sys_priv$.privilege%type := 'MANAGE_CONTENT_WITH_APPROVAL'
MANAGE_PRIV constant wwsec_sys_priv$.privilege%type := 'MANAGE'
MANAGE_STYLE_PRIV constant wwsec_sys_priv$.privilege%type := 'MANAGE_STYLE'
MANAGE_TEMPLATE_PRIV constant wwsec_sys_priv$.privilege%type := 'MANAGE_TEMPLATE'
MEMBER_TYPE_GROUP constant wwsec_member$.member_type%type := 'GROUP'
MEMBER_TYPE_USER constant wwsec_member$.member_type%type := 'USER'
MENU_EXECUTE constant number := 100
MENU_OBJ constant wwsec_sys_priv$.object_type_name%type := 'MENU'
MODIFY_PRIV constant wwsec_sys_priv$.privilege%type := 'MODIFY'
NAVBAR_OBJ constant wwsec_sys_priv$.object_type_name%type := 'NAVBAR'
NAVBAR_OWN constant number := 100
NO_PRIVILEGE constant number := 0
NOT_HIDDEN constant number(1) := 0
NOT_OWNER constant number(1) := 0
OWN_PRIV constant wwsec_sys_priv$.privilege%type := 'OWN'
OWNER constant number(1) := 1
PAGE_ADD_ONLY_CUSTOM_CNT constant number := 400
PAGE_FULL_CUSTOM_CNT constant number := 500
PAGE_HIDE_SHOW_CUSTOM_CNT constant number := 300
PAGE_MANAGE constant number := 900
PAGE_MANAGE_CNT constant number := 800
PAGE_MANAGE_CNT_WITH_APP constant number := 700
PAGE_MANAGE_STYLE constant number := 600
PAGE_OBJ constant wwsec_sys_priv$.object_type_name%type := 'PAGE'
PAGE_STYLE_CUSTOM constant number := 200
PAGE_VIEW constant number := 100
PORTLET_ACCESS constant number := 200
PORTLET_EDIT constant number := 400
PORTLET_EXECUTE constant number := 300
PORTLET_MANAGE constant number := 500
PORTLET_NON_LOCAL_ACCESS constant number := 200
PORTLET_NON_LOCAL_EXECUTE constant number := 300
PORTLET_NON_LOCAL_MANAGE constant number := 500
PORTLET_NON_LOCAL_PUBLISH constant number := 100
PORTLET_NONLOCAL_OBJ constant wwsec_sys_priv$.object_type_name%type := 'PORTLET_NON_LOCAL'
PORTLET_OBJ constant wwsec_sys_priv$.object_type_name%type := 'PORTLET'
PORTLET_PUBLISH constant number := 100
PROVIDER_EDIT constant number := 400
PROVIDER_EXECUTE constant number := 200
PROVIDER_MANAGE constant number := 500
PROVIDER_OBJ constant wwsec_sys_priv$.object_type_name%type := 'PROVIDER'
PROVIDER_PUBLISH constant number := 300
PUBLISH_PRIV constant wwsec_sys_priv$.privilege%type := 'PUBLISH'
SCHEMA_ADMIN constant number(1) := 1
SCHEMA_BROWSEIN constant number := 100
SCHEMA_BUILDIN constant number := 200
SCHEMA_OBJ constant wwsec_sys_priv$.object_type_name%type := 'SCHEMA'
SCHEMA_OWNER constant number(1) := 0
SEARCH_SUBTYPE_GROUP constant varchar2(30) := 'GROUP'
SEARCH_SUBTYPE_USER constant varchar2(30) := 'USER'
SEARCH_TYPE_UG constant varchar2(30) := 'USERGROUP'
SITE_MANAGE constant number := 600
SITE_MANAGE_CLASSIFICATION constant number := 400
SITE_MANAGE_STYLE constant number := 200
SITE_MANAGE_TEMPLATE constant number := 300
SITE_MANAGE_TRANSLATION constant number := 500
SITE_OBJ constant wwsec_sys_priv$.object_type_name%type := 'SITE'
SITE_SEPARATOR constant varchar2(1) := '/'
SITE_VIEW constant number := 100
STYLE_CUSTOM_PRIV constant wwsec_sys_priv$.privilege%type := 'STYLE_CUSTOM'
USER_PUBLIC constant number(1) := 2
VIEW_PRIV constant wwsec_sys_priv$.privilege%type := 'VIEW'
WORKFLOW_EXECUTE constant number := 300
WORKFLOW_MANAGE constant number := 400
WORKFLOW_STATUS constant number := 100
WORKFLOW_STATUS_AND_EXECUTE constant number := 200
| Variable Detail |
empty array
emptyidarray idarray
| Function/Procedure Detail |
function accessible_objects(
p_object_type_name in varchar2,
p_privilege in varchar2,
p_owner in varchar2 default wwctx_api . get_product_schema
) return arrayReturns a list of accessible objects of a single object type and single privilege level to which a specified user, or a specified group that the user belongs to, has privileges.
Example:
declare
l_array wwsec_api.array;
begin
l_array := wwsec_api.accessible_objects
(
p_object_type_name => wwsec_api.PAGE_OBJ,
p_privilege => wwsec_api.OWN_PRIV
);
end;
p_object_type_name - the type of object, e.g., ADMIN, FOLDER,
ITEM, etc.p_privilege - the privilege required on the objectp_owner - the name of the schema that owns the Access Control
List entry, or another name space discriminatorNO_ACCESSIBLE_OBJECT_EXCEPTION - if no such
object exists
function accessible_objects(
p_object_type_name in varchar2,
p_privilege_array in wwsec_api.array,
p_owner in varchar2 default wwctx_api . get_product_schema
) return arrayThis routine returns a list of accessible objects that the user has one or more of a specified set of privileges over.
Example:
declare
l_objects wwsec_api.array;
l_priv_array wwsec_api.array;
begin
l_priv_array(1):= wwsec_api.MANAGE_PRIV;
l_priv_array(2):= wwsec_api.CREATE_PRIV;
(
p_object_type_name => wwsec_api.PAGE_OBJ,
p_privilege_array => l_priv_array
);
end;
p_object_type_name - the type of object, e.g., ADMIN, FOLDER,
ITEM, etc.p_privilege_array - the list of privileges need to be checkedp_owner - the name of the schema that owns the Access Control
List entry, or another name space discriminatorNO_ACCESSIBLE_OBJECT_EXCEPTION - if no such object exists
procedure activate_portal_user(
p_user_name in varchar2
) Note: Sets portal_user to 'Y' in the OracleAS Portal 10G user record.
Example:
begin
wwsec_api.activate_portal_user
(
p_user_name => 'USER1'
);
end;
p_user_name - the user name of an existing user whose
account should be activatedUSER_NOT_FOUND_EXCEPTION - if a Portal User Profile entry for a
user with username p_user_name does not exist, even though the user
may be present in OIDACCESS_DENIED_EXCEPTION - if the user who initiates the calling
routine has insufficient authority to execute the routine
procedure add_group_to_list(
p_group_id in number,
p_to_group_id in number,
p_is_owner in number
) This routine adds a group to a list type group and sets privileges if the members of the group are to be owners of the group to which they are being added.
Example:
wwsec_api.add_group_to_list(
p_group_id => wwsec_api.group_id('POWER_USERS'),
p_to_group_id => wwsec_api.group_id('PORTAL_DEVELOPERS'),
p_is_owner => wwsec_api.OWNER
);
p_group_id - the portal's identifier for the group
to be added as a memberp_to_group_id - the portal's identifier for the group to which
the other group should be added as a memberp_is_owner - flag indicates whether or not the group should be
added as an owner of the groupGROUP_NOT_FOUND_EXCEPTION - if one of the referenced
groups doesn't existGROUP_MEMBER_EXCEPTION - if the group is already a member
of the other groupACCESS_DENIED_EXCEPTION - if the caller is not
an owner of the group or does not have a global privilege
to edit groupsCIRCULAR_REFERENCE_EXCEPTION - if the group rolls up
into itself at some point of the group membership chainLDAP_CONNECTION_EXCEPTION - if the portal cannot connect to OID
function add_portal_user(
p_user_name in varchar2,
p_db_user in varchar2 default null,
p_empno in varchar2 default null,
p_display_personal_info in varchar2 default 'n',
p_last_name in varchar2 default null,
p_first_name in varchar2 default null,
p_middle_name in varchar2 default null,
p_known_as in varchar2 default null,
p_maiden_name in varchar2 default null,
p_date_of_birth in varchar2 default null,
p_email in varchar2 default null,
p_work_phone in varchar2 default null,
p_home_phone in varchar2 default null,
p_mobile_phone in varchar2 default null,
p_pager in varchar2 default null,
p_fax in varchar2 default null,
p_office_addr1 in varchar2 default null,
p_office_addr2 in varchar2 default null,
p_office_addr3 in varchar2 default null,
p_office_city in varchar2 default null,
p_office_state in varchar2 default null,
p_office_zip in varchar2 default null,
p_office_country in varchar2 default null,
p_home_addr1 in varchar2 default null,
p_home_addr2 in varchar2 default null,
p_home_addr3 in varchar2 default null,
p_home_city in varchar2 default null,
p_home_state in varchar2 default null,
p_home_zip in varchar2 default null,
p_home_country in varchar2 default null,
p_organization in varchar2 default null,
p_title in varchar2 default null,
p_spending_limit in number default null,
p_hiredate in varchar2 default null,
p_source in varchar2 default null,
p_manager_user_name in varchar2 default null,
p_portal_user in varchar2 default 'y'
) return numberIn Oracle9iAS Portal 9.0.2 (or later) this function can be used to add a user profile for a user that exists in Oracle Internet Directory (OID). The user must already exist in OID before this function is called. The result of this function is that the user attributes are updated based on the values that are passed. A local entry for the user is also created in the Portal. This local entry can then be used to grant appropriate privileges to access various Portal objects.
Example:
declare
l_id number;
begin
l_id := wwsec_api.add_portal_user
(
p_User_Name => 'JWDOE',
p_Empno => '123-45-6789',
p_Display_Personal_Info => 'Y',
p_Last_Name => 'Doe',
p_First_Name => 'John',
p_Middle_Name => 'Wilson',
p_Known_As => 'John',
p_Date_Of_Birth => '15-MAR-1968',
p_Email => 'jdoe@abc.com',
p_Work_Phone => '(123) 456-7890',
p_Home_Phone => '(234) 567-8901',
p_Mobile_Phone => '(345) 678-9012',
p_Pager => '(456) 789-0123',
p_Fax => '(567) 890-1234',
p_Office_Addr1 => '123 First St',
p_Office_City => 'Washington',
p_Office_State => 'DC',
p_Office_Zip => '20001',
p_Office_Country => 'USA',
p_Home_Addr1 => '234 Second St',
p_Home_City => 'Washington',
p_Home_State => 'DC',
p_Home_Zip => '20001',
p_Home_Country => 'USA',
p_Title => 'Not Assigned',
p_Hiredate => '01-Oct-2000',
p_Manager_User_Name => 'GHTHOMAS',
p_Portal_User => 'Y'
);
end;
p_User_Name - the user name of the user being added to
OracleAS Portal 10Gp_DB_User - a database user namep_Empno - an employee numberp_Display_Personal_Info - enter Y or N to choose to
display personal informationp_Last_Name - the user's family namep_First_Name - the user's given namep_Middle_Name - the user's middle namep_Known_As - the user's nicknamep_Maiden_Name - the user's maiden name (if applicable)p_Date_Of_Birth - the user's date of birth.
Note: Use the date format 'DD-MON-YYYY'
format (the month is not case sensitive).p_Email - the user's e-mail addressp_Work_Phone - the user's work phone numberp_Home_Phone - the user's home phone numberp_Mobile_Phone - the user's mobile phone numberp_Pager - the user's pager numberp_Fax - the user's fax numberp_Office_Addr1 - the first line of the user's office addressp_Office_Addr2 - the second line of the user's office addressp_Office_Addr3 - the third line of the user's office addressp_Office_City - the city in which the user's office is locatedp_Office_State - the state in which the user's office is locatedp_Office_Zip - the zip code for the person's officep_Office_Country - the country in which the user's office
is locatedp_Home_Addr1 - the first line of the user's home addressp_Home_Addr2 - the second line of the user's home address.p_Home_Addr3 - the third line of the user's home addressp_Home_City - the user's home cityp_Home_State - the user's home statep_Home_Zip - the user's home zip codep_Home_Country - the user's home countryp_Organization - the user's organization.
Note: This parameter is currently ignored.
The organization value is always taken from
the subscriber.p_Title - the user's job titlep_Spending_Limit - the user's spending limit
Note: This parameter is currently ignored.p_Hiredate - the user's date of hire
Note: Use the date format 'DD-MON-YYYY'
(the month is not case sensitive).p_Source - the source of user information (via
bulkload or UI)
Note: This parameter is currently ignored.p_Manager_User_Name - the user name of the user's managerp_Portal_User - (Y/N) indicates whether the user is an
active OracleAS Portal 10G userNO_MANAGER_EXCEPTION - if the user's manager's user ID is
not enteredACCESS_DENIED_EXCEPTION - if the user who initiates the calling
routine has insufficient authority to execute the routineUNEXPECTED_EXCEPTION - if a problem occurs for which an
exception has not been definedUSER_EXISTS_EXCEPTION - if a local user profile already exists
in the portal schemaUSER_NOT_FOUND_EXCEPTION - if the user does not exist in OIDLDAP_CONNECTION_EXCEPTION - if the portal cannot connect to OID
procedure add_user_to_list(
p_person_id in number,
p_to_group_id in number,
p_is_owner in number
) This routine adds a user to a group and sets privileges if the user is to be an owner of the group. In Oracle9iAS Portal 9.0.2 or later, this API makes an API call to OID to update the group in the directory.
Example:
wwsec_api.add_user_to_list(
p_person_id => wwsec_api.id('JDOE'),
p_to_group_id => wwsec_api.group_id('PORTAL_DEVELOPERS'),
p_is_owner => wwsec_api.OWNER
);
p_person_id - the portal's identifier for the userp_to_group_id - the portal's identifier for the group to which
the user should be addedp_is_owner - flag indicates whether or not the user should be
added as an owner of the groupINVALID_PERSON_ID_EXCEPTION - if the specified
p_person_id doesn't existGROUP_NOT_FOUND_EXCEPTION - if the specified
group doesn't existACCESS_DENIED_EXCEPTION - if the caller is not
an owner of the group or does not have a global privilege
to edit groupsGROUP_MEMBER_EXCEPTION - if the user specified by
p_person_id is already a member of the groupLDAP_CONNECTION_EXCEPTION - if the portal cannot connect to OIDprocedure clear_package_cache
The package wwsec_api maintains its own internal cache to improve performance of the APIs. Resetting these cached values can degrade the performance of these APIs. However, if an application needs to reset the state of the package variables for some reason then this procedure can be used.
It clears all the values held in package level variables so that these values can be obtained from the database when they are accessed the next time around. This is useful when switching context from one subscriber to another, since the settings for each subscriber can be different from others.
Example:
begin
wwsec_api.clear_package_cache;
end;
procedure copy_privileges(
p_object_type in varchar2,
p_object_from in varchar2,
p_object_to in varchar2,
p_owner in varchar2 default wwctx_api . get_product_schema
) This procedure copies all privileges granted on object_from to object_to. The source object must exist, and must be of type p_obj_type. ACL entries are then created for the object_to referenced, but no checks are made to ensure that the object exists.
Example:
begin
copy_privileges(
p_object_type => wwsec_api.PAGE_OBJ,
p_object_from => '1/1'
p_object_to => '1/399'
);
end;
p_object_type - the ACL object_type name constant for the
source objectp_object_from - the unique name of the source objectp_object_to - the unique name of the destination objectp_owner - the name of the schema that owns the Access Control
List entry, or another name space discriminatorACCESS_DENIED_EXCEPTION - if then caller has no authorityVALUE_ERROR_EXCEPTION - if object_from is the same as object_to
function create_list(
p_name in varchar2,
p_site_id in number default global_group,
p_description in varchar2 default null,
p_hidden_group in number default not_hidden,
p_hidden_members in number default not_hidden
) return numberNote: This API will create the group entry in the associated Oracle Internet Directory. If the group creation succeeds in OID, then the group will be created, regardless of the eventual state of the PL/SQL transaction in the OracleAS Portal 10G repository. E.g., if the PL/SQL API transaction is rolled back, the group will still remain in OID.
Example:
l_groupid number;
l_groupid := wwsec_api.create_list(
p_name => 'DEVELOPER',
p_description => 'This is a group for developers'
);
p_name - a name for the new group
Note: the p_name must be unique for the site in which it is created and unique among global groups.
p_site_id - the unique identifier for the site in which
the group will be created
Note: This parameter is ignored in Oracle9iAS Portal 9.0.2 and later.
p_description - a description of the new groupp_hidden_group - indicates if the new group is hidden from
users and groups (except those who are
owners of the new group)p_hidden_members - this parameter is not usedDUPLICATE_GROUP_EXCEPTION - if a group with the same name existsINVALID_GRP_NAME_EXCEPTION - if the group name is invalidACCESS_DENIED_EXCEPTION - if the user who initiates the
calling routine has insufficient authority to execute the
routineLDAP_CONNECTION_EXCEPTION - if the portal cannot connect to OID
function db_user(
p_user_name in varchar2
) return varchar2Example:
declare
l_dbuser varchar2;
begin
l_dbuser := wwsec_api.db_user(
p_user_name => 'USER1'
);
end;
p_user_name - the name of an OracleAS Portal 10G userUSER_NOT_FOUND_EXCEPTION - if the user name is not found
procedure deactivate_portal_user(
p_user_name in varchar2
) Note: Sets portal_user to 'N' in the OracleAS Portal 10G user record.
Example:
begin
wwsec_api.deactivate_portal_user
(
p_user_name => 'USER1'
);
end;
p_user_name - the user name of the OracleAS Portal 10G user
whose account is to be deactivatedUSER_NOT_FOUND_EXCEPTION - if a Portal User Profile entry for
a user with username p_user_name does not exist, even though the user
may be present in OIDACCESS_DENIED_EXCEPTION - if the user who initiates the calling
routine has insufficient authority to execute the routine
procedure delete_group_from_list(
p_group_id in number,
p_member_group_id in number
) A group may contain members which are users or other groups. This procedure removes a specified group from the list of members of another specified group.
Example:
wwsec_api.delete_group_from_list(
p_group_id => wwsec_api.group_id ('GROUP1'),
p_member_group_id => wwsec_api.group_id ('SUBGROUP1')
);
p_group_id - the portal's identifier for the groupp_member_group_id - the portal's identifier for the member userGROUP_NOT_FOUND_EXCEPTION - if the referenced
group doesn't existACCESS_DENIED_EXCEPTION - if the caller is not
an owner of the group or does not have a global privilege
to edit groupsLDAP_CONNECTION_EXCEPTION - if the portal cannot connect to OID
procedure delete_list(
p_groupid in number
) Note: Only an owner of a group can delete a group.
Example:
wwsec_api.delete_list(
p_group_id => 13
);
p_groupid - the ID of the group to be deletedGROUP_NOT