NAME

Net::Proxmox::VE::Access - Functions for the 'access' portion of the API

SYNOPSIS

# assuming $obj is a Net::Proxmox::VE object

my @dir_index = $obj->access();

my @domain_index = $obj->access_domains();
my $domain = $obj->access_domains($realm);
eval{ $obj->access_domains(\%args) };

METHODS

access

Without arguments, returns the 'Directory index':

access_domains

Without arguments, returns 'Authentication domain index':

(Corresponds to the following functions in the PMVW Api definitions)

HTTP: GET /api2/json/access/domains
CLI:  pvesh get /access/domains

With a single scalar argument, returns a single Domain object:

(Corresponds to the following functions in the PMVW Api definitions)

HTTP: GET /api2/json/access/domains/{realm}
CLI:  pvesh get /access/domains/{realm}

With multiple arguments, '[Adds] an authentication server':

(Corresponds to the following functions in the PMVW Api definitions)

HTTP: POST /api2/json/access/domains
CLI:  pvesh create /access/domains

check_login_ticket

Verifies if the objects login ticket is valid and not expired

Returns true if valid Returns false and clears the the login ticket details inside the object if invalid

clear_login_ticket

Clears the login ticket inside the object

get_acl

The returned list is restricted to objects where you have rights to modify permissions

$pool = $obj->get_acl();

login

Initiates the log in to the PVE Server using JSON API, and potentially obtains an Access Ticket.

Returns true if success

update_acl

Updates (sets) an acl's data

$ok = $obj->update_acl( %args );
$ok = $obj->update_acl( \%args );

%args may items contain from the following list

path

String. Access control path. Required.

roles

String. List of roles. Required.

delete

Boolean. Removes the access rather than adding it. Optional.

groups

String. List of groups. Optional.

propagate

Boolean. Allow to propagate (inherit) permissions. Optional.

users

String. List of users. Optional.

update_password

Updates a users password

$ok = $obj->update_password( %args );
$ok = $obj->update_password( \%args );

Each user is allowed to change his own password. See proxmox api document for which permissions are needed to change the passwords of other people.

%args may items contain from the following list

password

String. The new password. Required.

userid

String. User ID. Required.

SEE ALSO

L<Net::Proxmox::VE>

VERSION

VERSION 0.2

AUTHORS

Brendan Beveridge L<<brendan@nodeintegration.com.au>>
Dean Hamstead L<<dean@fragfest.com.au>>