Crate kerbeiros

Source
Expand description

Kerberos client

§Concepts

  • KDC (Key Distribution Center): Service that distributes the tickets. The host that provides this server is also called KDC.
  • TGS (Ticket Granting Server): Ticket used to authenticate the user against a specified service.
  • TGT (Ticket Granting Ticket): Ticket used to retrieve the TGS’s from the KDC.

§Examples

Asking for a TGT:

use kerbeiros::*;
use ascii::AsciiString;
use std::net::*;

// Prepare the arguments
let realm = AsciiString::from_ascii("CONTOSO.COM").unwrap();
let kdc_address = IpAddr::V4(Ipv4Addr::new(192, 168, 0, 1));
let username = AsciiString::from_ascii("Bob").unwrap();
let user_key = Key::Password("S3cr3t".to_string());

// Request the TGT
let tgt_requester = TgtRequester::new(realm, kdc_address);
let credential = tgt_requester.request(&username, Some(&user_key)).unwrap();

// Save the ticket into a Windows format file
credential.clone().save_into_krb_cred_file("bob_tgt.krb").unwrap();

// Save the ticket into a Linux format file
credential.save_into_ccache_file("bob_tgt.ccache").unwrap();

§Kerberos References

Re-exports§

pub use messages::*;
pub use credentials::*;
pub use key::*;
pub use requesters::*;
pub use utils::*;

Modules§

credentials
Classes that represents the Kerberos credentials
key
Exports the types of user keys available for this implementation.
messages
Groups the available messages which are sent and received from KDC.
requesters
This module exports the classes that are responsible for send the different requests to the KDC and receive its responses
utils
Implement functions that can be useful to support the main library functionality.

Enums§

Error
Type of error in kerbeiros library.

Type Aliases§

Result
Result to wrap kerbeiros error.