[][src]Crate kerbeiros

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 Definitions

Result

Result to wrap kerbeiros error.