Plasma GitLab Archive
Projects Blog Knowledge

Module Plasma_ug

module Plasma_ug: sig .. end
Users and groups

val req_admin_tables : string list
Which admin tables are required (normally "passwd" and "group", but in the future more such tables could be defined)
class type ug_admin = object .. end
class type ug_admin_ro = object .. end
Subtype of ug_admin for read-only accesses (for shm)
val parse_ug_admin : (string * string) list -> ug_admin
Parses the admin tables passed as argument (as pairs (table_name,table_contents)). The tables denoted by the function req_admin_tables must be passed as minimum.

Unparseable lines are silently ignored.

User entries referring to nonexisting group entries are silently ignored.


Authentication tickets



An authentication ticket is a string

 <type>:<rpc_user>:<rpc_password>:<user>:<group>:<supp_groups>:<verifier> 

where:

  • type is the string SCRAM-SHA1 (identifying the authentication scheme)
  • rpc_user: this is a suggestion for a user ID to authenticate as on the RPC level
  • rpc_password: the password of rpc_user
  • user: the user name of the principal the ticket is permitting
  • group: the group name of the principal
  • supp_groups: a comma-separated list of further groups
  • verifier: an int64 verifying the ticket (from Nn_authticket)
The strings (except type) are Base64-encoded.
val serialize_auth_ticket : rpc_user:string ->
rpc_password:string ->
user:string ->
group:string -> supp_groups:Plasma_util.StrSet.t -> verifier:int64 -> string
val rpc_login_of_auth_ticket : string -> string * string
Returns (rpc_user,rpc_password)
val principal_of_auth_ticket : string -> string * string * Plasma_util.StrSet.t
Returns (user,group,supp_groups)
val verifier_of_auth_ticket : string -> int64
Returns (verifier)
This web site is published by Informatikbüro Gerd Stolpmann
Powered by Caml