M5. Newbies

Der Newbie ist registriert

Nachdem der Zugriff einem Newbie gewährt wurde, aber bevor die entsprechenden Informationen in der Datenbank gespeichert werden.

Datenbank

Parameter

Zurückgegebener Wert

verfügbar

id – vorläufige/ständige Workstation-ID

address – Netzwerkadresse der Workstation

station – Name der Workstation

existing – für die vorhandene Workstation bestätigen

wird ignoriert

Text der Prozedur:

--[[

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

Der Newbie stellt eine Verbindung mit dem Dr.Web Server her

Wird aufgerufen, wenn sich ein Newbie mit dem Dr.Web Server verbindet.

Datenbank

Parameter

Zurückgegebener Wert

verfügbar

id – vorläufige Workstation-ID

address – Netzwerkadresse der Workstation

station – Name der Workstation

description – Beschreibung der Workstation (nur für Clients unter Windows)

ldapdn – LDAP DN der Workstation (nur für Clients unter Windows)

sid – Workstation-SID

mac – MAC-Adresse der Workstation

nil – Standardeinstellungen wie im Normalmodus des Dr.Web Servers verwenden

boolean – Aktion des Dr.Web Servers:

true – Manuelle Genehmigung anfordern (analog zu Newbie approval)

false – Zugriff verweigern (analog zu Newbie closed)

string – Primärgruppe bei der Genehmigung:

empty – genehmigen, Gruppe Everyone als Primärgruppe festlegen (analog zu Newbie open)

not-empty – Zugriff genehmigen und die Gruppe mit der ID, die dieser Zeile entspricht, als Primärgruppe festlegen. Achtung! Es wird überprüft, ob diese ID besteht. Wenn die ID nicht besteht, wird die Gruppe Everyone als Primärgruppe festgelegt

vector – standardmäßig genehmigen, enthält folgende Befehle und optionale Argumente:

pgroup – Primärgruppe festlegen, danach muss die ID der Gruppe folgen

rate – Tarifgruppe festlegen, danach muss die ID der Tarifgruppe folgen

id – Workstation-ID festlegen, danach muss die Workstation-ID folgen

approve – manuelle Genehmigung statt automatischer Genehmigung anfordern

into – Aufnahme in eine vorhandene Workstation genehmigen, danach muss die ID der vorhandenen Workstation folgen

Text der Prozedur:

--[[

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

Der Newbie wurde angenommen

Wird aufgerufen, wenn Zugriff einem Newbie gewährt wird, bei einer erfolgreichen Autorisierung des Newbie und bei der Erstellung einer Workstation in der Datenbank.

Datenbank

Parameter

Zurückgegebener Wert

verfügbar

id – vorläufige Workstation-ID

address – Netzwerkadresse der Workstation

station – Name der Workstation

compsid – Workstation-SID

compmac – MAC-Adresse der Workstation

description – Beschreibung der Workstation

wird ignoriert

Text der Prozedur:

--[[

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