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.