M5. Novices

Le novice est enregistré

Après que l’accès est fourni à un novice mais avant que les informations appropriées sont enregistrées dans la base de données.

Base de données

Paramètres

Valeur retournée

disponible

id  : ID du poste temporaire/permanent

address : adresse réseau du poste,

station : nom du poste,

existing : confirmer pour le poste existant

ignoré

Texte de la procédure :

--[[

Database:

 available

 

Called:

 when newbie access granted but before information stored in database

 

Parameters:

 id             station temporary/permanent ID

 address        station network address

 station        station name

 existing       approved using existing station

 

Returned value:

 ignored

 

]]

 

local args = ... -- args.id, args.address, args.station

Le novice se connecte au Serveur Dr.Web

Appelé lorsqu’un novice se connecte au Serveur Dr.Web.

Base de données

Paramètres

Valeur retournée

disponible

id : ID du poste temporaire,

address : adresse réseau du poste,

station : nom du poste,

description : description du poste (uniquement pour les clients sous Windows),

ldapdn : LDAP DN du poste (uniquement pour les clients sous Windows),

sid : SID du poste,

mac : adresse MAC du poste,

nil : utiliser les paramètres par défaut comme dans le cas de fonctionnement standard du Serveur Dr.Web,

boolean : action du Serveur Dr.Web :

true : demander l’approbation manuelle (similaire à Newbie approval),

false : interdire l’accès (similaire à Newbie closed),

string : groupe primaire lors de l’approbation:

empty : approuver, spécifier le groupe Everyone comme primaire (similaire à Newbie open),

not-empty : approuver l’accès et spécifier comme primaire le groupe dont l’ID correspond à la ligne donnée. Attention ! L’existence de cette ID sera vérifiée et, si l’ID n’existe pas, le groupe Everyone sera spécifié comme primaire,

vector : approuver par défaut, contient les commandes suivantes et les arguments non obligatoires:

pgroup : spécifier le groupe primaire, ensuite vient l’ID de groupe,

rate : spécifier le groupe de tarif, ensuite vient l’ID de groupe de tarif,

id : spécifier l’ID du poste, ensuite vient l’ID du poste

approve : demander l’approbation manuelle au lieu de l’approbation automatique,

into : approuver dans le poste existant, ensuite vient l’ID du poste existant

Texte de la procédure :

--[[

Called:

 when newbie connected

 

Database:

 available

 

Parameters:

 id             station temporary ID

 address        station network address

 station        station name

 description    station description (Windows client only)

 ldapdn         station LDAP DN (Windows client only)

 sid            station computer SID

 mac            station computer MAC

 

Returned value:

            nil        default, standard server operation according settings

 boolean    true       request approval (like 'Newbie approval' does)

            false      reject access (like 'Newbie closed' does)

 string     empty      accept, set primary group to 'Everyone'

                         (like 'Newbie open' does)

            not-empty  accept, set primary group to this string (ID) (substring after space treated as rate group id)

                       Attention! Existence of This ID will be checked and

                       if it does not exist it will be replaced by `Everyone'

 vector                accept by default, must contain commands and optional arguments:

                       "pgroup"  - set primary group, must be followed by group id

                       "rate"    - set rate group, must be followed by rate group id

                       "id"      - set station id, must be followed by station id

                       "approve" - request approval instead of accepting

                       "into"    - accept into existing station, must be followed by existing station id

 

 

Procedure from next set will be called if returned nothing.

]]

 

local args = ... -- args.id, args.address, args.station

 

-- place my station (named ADMINISTRATOR) into `Everyone' group ignoring newbie policy and newbie's preference

if string.upper( args.station ) == 'ADMINISTRATOR' then

 return ''

end

 

-- set new UUID for any station with this id and request for manual approve, useful for cloned stations

if args.id == '01234567-89ab-cdef-0123-456789abcdef' then

 return { "id", dwcore.get_uuid(), "approve" }

end

 

-- no return => `nil' value => according server settings

Le novice est approuvé

Appelé si l’accès est fourni à un novice et que son authentification est réussie et un poste est créé dans la base de données.

Base de données

Paramètres

Valeur retournée

disponible

id : ID du poste temporaire,

address : adresse réseau du poste,

station : nom du poste,

compsid : SID du poste,

compmac : adresse MAC du poste,

description : description du poste

ignoré

Texte de la procédure :

--[[

Called:

 when newbie access granted, authorization is successfull

 and station created in database

 

Database:

 available

 

Parameters:

 id             station temporary ID

 address        station network address

 station        station name

 compsid        station UID (SID on Windows)

 compmac        station MAC address

 description    station description

 

Returned value:

 ignored

 

]]

 

local args = ... -- args.id, args.address, args.station, args.compsid, args.compmac, args.description