Module krb_realm

Represents a Kerberos realm for the purpose of interacting with it as a client.

Behaviours: gen_server.

Description

Represents a Kerberos realm for the purpose of interacting with it as a client.

Data Types

auth_options()

auth_options() = #{lifetime => secs(), flags => [krb_proto:kdc_flag()]}

password()

password() = binary()

principal()

principal() = [string()]

realm()

realm() = string()

secs()

secs() = integer()

tgs_options()

tgs_options() = #{lifetime => secs(), flags => [krb_proto:kdc_flag()], request_pac => boolean()}

Function Index

authenticate/3Performs an initial Kerberos password authentication for the given principal (AS-REQ with an encrypted timestamp).
authenticate/4Performs an initial Kerberos password authentication for the given principal (AS-REQ with an encrypted timestamp).
obtain_ticket/3Obtains a service ticket using the given Ticket-Granting Ticket (TGT) for the specified service principal (TGS-REQ).
obtain_ticket/4Obtains a service ticket using the given Ticket-Granting Ticket (TGT) for the specified service principal (TGS-REQ).
open/1Opens a client for a Kerberos realm, either returning an existing client process or starting a new one.

Function Details

authenticate/3

authenticate(Pid::pid(), Principal::principal(), Secret::password()) -> {ok, krb_proto:ticket()} | {error, term()}

Performs an initial Kerberos password authentication for the given principal (AS-REQ with an encrypted timestamp).

authenticate/4

authenticate(Pid::pid(), Principal::principal(), Secret::password(), Options::auth_options()) -> {ok, krb_proto:ticket()} | {error, term()}

Performs an initial Kerberos password authentication for the given principal (AS-REQ with an encrypted timestamp).

obtain_ticket/3

obtain_ticket(Pid::pid(), TGT::krb_proto:ticket(), ServicePrincipal::principal()) -> {ok, krb_proto:ticket()} | {error, term()}

Obtains a service ticket using the given Ticket-Granting Ticket (TGT) for the specified service principal (TGS-REQ).

obtain_ticket/4

obtain_ticket(Pid::pid(), TGT::krb_proto:ticket(), ServicePrincipal::principal(), Options::tgs_options()) -> {ok, krb_proto:ticket()} | {error, term()}

Obtains a service ticket using the given Ticket-Granting Ticket (TGT) for the specified service principal (TGS-REQ).

open/1

open(Realm::realm()) -> {ok, pid()} | {error, term()}

Opens a client for a Kerberos realm, either returning an existing client process or starting a new one.


Generated by EDoc