/// <summary> /// Constructor. /// </summary> /// <param name="key_encryption">The Key encryption type.</param> /// <param name="key">The key.</param> /// <param name="name_type">The key name type.</param> /// <param name="realm">The Realm for the key.</param> /// <param name="components">The name components for the key.</param> /// <param name="timestamp">Timestamp when key was created.</param> /// <param name="version">Key Version Number (KVNO).</param> public KerberosKey(KRB_ENC_TYPE key_encryption, byte[] key, KRB_NAME_TYPE name_type, string realm, string[] components, DateTime timestamp, uint version) { KeyEncryption = key_encryption; _key = key; NameType = name_type; Realm = realm; Components = components; Timestamp = timestamp; Version = version; }
/// <summary> /// Constructor. /// </summary> /// <param name="key_encryption">The Key encryption type.</param> /// <param name="key">The key.</param> /// <param name="name_type">The key name type.</param> /// <param name="realm">The Realm for the key.</param> /// <param name="components">The name components for the key.</param> /// <param name="timestamp">Timestamp when key was created.</param> /// <param name="version">Key Version Number (KVNO).</param> public KerberosKey(KRB_ENC_TYPE key_encryption, byte[] key, KRB_NAME_TYPE name_type, string realm, IEnumerable <string> components, DateTime timestamp, uint version) { KeyEncryption = key_encryption; _key = (byte[])key.Clone(); NameType = name_type; Realm = realm; Components = components.ToArray(); Timestamp = timestamp; Version = version; }
/// <summary> /// Constructor. /// </summary> /// <param name="key_encryption">The Key encryption type.</param> /// <param name="key">The key as a hex string.</param> /// <param name="name_type">The key name type.</param> /// <param name="principal">Principal for key, in form TYPE/name@realm.</param> /// <param name="timestamp">Timestamp when key was created.</param> /// <param name="version">Key Version Number (KVNO).</param> public KerberosKey(KRB_ENC_TYPE key_encryption, string key, KRB_NAME_TYPE name_type, string principal, DateTime timestamp, uint version) : this(key_encryption, GetKey(key), name_type, principal, timestamp, version) { }
/// <summary> /// Constructor. /// </summary> /// <param name="key_encryption">The Key encryption type.</param> /// <param name="key">The key.</param> /// <param name="name_type">The key name type.</param> /// <param name="principal">Principal for key, in form TYPE/name@realm.</param> /// <param name="timestamp">Timestamp when key was created.</param> /// <param name="version">Key Version Number (KVNO).</param> public KerberosKey(KRB_ENC_TYPE key_encryption, byte[] key, KRB_NAME_TYPE name_type, string principal, DateTime timestamp, uint version) : this(key_encryption, key, name_type, GetRealm(principal), GetComponents(principal), timestamp, version) { }