- SEE ALSO
VMS::Persona - Create, assume, or drop Personas
use VMS::Persona; $Persona = new_persona(NAME => $UserName [, ASSUME_DEFPRIV => bool] [, ASSUME_DEFCLASS => bool]); $IsOK = assume_persona(PERSONA => $Persona [, ASSUME_SECURITY => bool] [, ASSUME_ACCOUNT => bool] [, ASSUME_JOB_WIDE => bool]); $IsOK = drop_persona(); $IsOK = delete_persona($Persona);
Create, assume, drop, or delete personas.
This function creates a new persona context and returns a handle to it. If ASSUME_DEFPRIV is set to true, then the persona is created with default privileges. If ASSUME_DEFCLASS is set to true, then the persona is created with default classification.
Assume a persona previously created with
ASSUME_JOB_WIDE parameters will, if set to true, set the corresponding flags in the
Drop the current persona. (This is a convenience interface to the $PERSONA_ASSUME system service with a persona handle of 1, which discards the current persona)
Delete a previously created persona.
Standard VMS system security is enforced, which means the process needs DETACH (IMPERSONATE in VMS 7.1 and up) privilege and read access to the SYSUAF.
The persona services first came into VMS in version 6.2, so this module just won't work on earlier versions of VMS.
The docs for the persona services in the VMS 6.2 and 7.1 docs are a touch... skimpy. There's no better interpretation here, since I don't have one.
The persona services can croak() with some errors. This is a list of them.
- Odd number of items passed
This error is thrown if
new_persona()is called with an odd number of parameters.
- Invalid parameter passed
Thrown if a bogus name (on the left side of a =>) parameter is passed.
If a VMS error has occured, the functions will return undef, and fill in $^E with the error code.
Dan Sugalski <email@example.com>
perl(1), OpenVMS System Services Reference Manual