NM.Setting8021x

g GObject.Object GObject.Object NM.Setting NM.Setting GObject.Object->NM.Setting NM.Setting8021x NM.Setting8021x NM.Setting->NM.Setting8021x

Subclasses:

None

Methods

Inherited:

NM.Setting (21), GObject.Object (37)

Structs:

GObject.ObjectClass (5)

class

check_cert_scheme (pdata, length)

class

new ()

add_altsubject_match (altsubject_match)

add_eap_method (eap)

add_phase2_altsubject_match (phase2_altsubject_match)

clear_altsubject_matches ()

clear_eap_methods ()

clear_phase2_altsubject_matches ()

get_altsubject_match (i)

get_anonymous_identity ()

get_auth_timeout ()

get_ca_cert_blob ()

get_ca_cert_password ()

get_ca_cert_password_flags ()

get_ca_cert_path ()

get_ca_cert_scheme ()

get_ca_cert_uri ()

get_ca_path ()

get_client_cert_blob ()

get_client_cert_password ()

get_client_cert_password_flags ()

get_client_cert_path ()

get_client_cert_scheme ()

get_client_cert_uri ()

get_domain_match ()

get_domain_suffix_match ()

get_eap_method (i)

get_identity ()

get_num_altsubject_matches ()

get_num_eap_methods ()

get_num_phase2_altsubject_matches ()

get_optional ()

get_pac_file ()

get_password ()

get_password_flags ()

get_password_raw ()

get_password_raw_flags ()

get_phase1_auth_flags ()

get_phase1_fast_provisioning ()

get_phase1_peaplabel ()

get_phase1_peapver ()

get_phase2_altsubject_match (i)

get_phase2_auth ()

get_phase2_autheap ()

get_phase2_ca_cert_blob ()

get_phase2_ca_cert_password ()

get_phase2_ca_cert_password_flags ()

get_phase2_ca_cert_path ()

get_phase2_ca_cert_scheme ()

get_phase2_ca_cert_uri ()

get_phase2_ca_path ()

get_phase2_client_cert_blob ()

get_phase2_client_cert_password ()

get_phase2_client_cert_password_flags ()

get_phase2_client_cert_path ()

get_phase2_client_cert_scheme ()

get_phase2_client_cert_uri ()

get_phase2_domain_match ()

get_phase2_domain_suffix_match ()

get_phase2_private_key_blob ()

get_phase2_private_key_format ()

get_phase2_private_key_password ()

get_phase2_private_key_password_flags ()

get_phase2_private_key_path ()

get_phase2_private_key_scheme ()

get_phase2_private_key_uri ()

get_phase2_subject_match ()

get_pin ()

get_pin_flags ()

get_private_key_blob ()

get_private_key_format ()

get_private_key_password ()

get_private_key_password_flags ()

get_private_key_path ()

get_private_key_scheme ()

get_private_key_uri ()

get_subject_match ()

get_system_ca_certs ()

remove_altsubject_match (i)

remove_altsubject_match_by_value (altsubject_match)

remove_eap_method (i)

remove_eap_method_by_value (eap)

remove_phase2_altsubject_match (i)

remove_phase2_altsubject_match_by_value (phase2_altsubject_match)

set_ca_cert (value, scheme, out_format)

set_client_cert (value, scheme, out_format)

set_phase2_ca_cert (value, scheme, out_format)

set_phase2_client_cert (value, scheme, out_format)

set_phase2_private_key (value, password, scheme, out_format)

set_private_key (value, password, scheme, out_format)

Virtual Methods

Inherited:

GObject.Object (7)

Properties

Inherited:

NM.Setting (1)

Name

Type

Flags

Short Description

altsubject-matches

[str]

r/w

anonymous-identity

str

r/w/en

auth-timeout

int

r/w/en

ca-cert

GLib.Bytes

r/w/en

ca-cert-password

str

r/w/en

ca-cert-password-flags

NM.SettingSecretFlags

r/w/en

ca-path

str

r/w/en

client-cert

GLib.Bytes

r/w/en

client-cert-password

str

r/w/en

client-cert-password-flags

NM.SettingSecretFlags

r/w/en

domain-match

str

r/w/en

domain-suffix-match

str

r/w/en

eap

[str]

r/w

identity

str

r/w/en

optional

bool

r/w/en

pac-file

str

r/w/en

password

str

r/w/en

password-flags

NM.SettingSecretFlags

r/w/en

password-raw

GLib.Bytes

r/w/en

password-raw-flags

NM.SettingSecretFlags

r/w/en

phase1-auth-flags

int

r/w/en

phase1-fast-provisioning

str

r/w/en

phase1-peaplabel

str

r/w/en

phase1-peapver

str

r/w/en

phase2-altsubject-matches

[str]

r/w

phase2-auth

str

r/w/en

phase2-autheap

str

r/w/en

phase2-ca-cert

GLib.Bytes

r/w/en

phase2-ca-cert-password

str

r/w/en

phase2-ca-cert-password-flags

NM.SettingSecretFlags

r/w/en

phase2-ca-path

str

r/w/en

phase2-client-cert

GLib.Bytes

r/w/en

phase2-client-cert-password

str

r/w/en

phase2-client-cert-password-flags

NM.SettingSecretFlags

r/w/en

phase2-domain-match

str

r/w/en

phase2-domain-suffix-match

str

r/w/en

phase2-private-key

GLib.Bytes

r/w/en

phase2-private-key-password

str

r/w/en

phase2-private-key-password-flags

NM.SettingSecretFlags

r/w/en

phase2-subject-match

str

r/w/en

deprecated

pin

str

r/w/en

pin-flags

NM.SettingSecretFlags

r/w/en

private-key

GLib.Bytes

r/w/en

private-key-password

str

r/w/en

private-key-password-flags

NM.SettingSecretFlags

r/w/en

subject-match

str

r/w/en

deprecated

system-ca-certs

bool

r/w/en

Signals

Inherited:

GObject.Object (1)

Fields

Inherited:

GObject.Object (1)

Class Details

class NM.Setting8021x(**kwargs)
Bases:

NM.Setting

Abstract:

No

Structure:

NM.Setting8021xClass

IEEE 802.1x Authentication Settings

classmethod check_cert_scheme(pdata, length)
Parameters:
  • pdata (object or None) – the data pointer

  • length (int) – the length of the data

Raises:

GLib.Error

Returns:

the scheme of the blob or NM.Setting8021xCKScheme.UNKNOWN. For None it also returns NM.Setting8021xCKScheme.UNKNOWN.

Return type:

NM.Setting8021xCKScheme

Determines and verifies the blob type. When setting certificate properties of NM.Setting8021x the blob must be not UNKNOWN (or None).

New in version 1.2.

classmethod new()
Returns:

the new empty NM.Setting8021x object

Return type:

NM.Setting

Creates a new NM.Setting8021x object with default values.

add_altsubject_match(altsubject_match)
Parameters:

altsubject_match (str) – the altSubjectName to allow for this connection

Returns:

True if the alternative subject name match was successfully added, False if it was already allowed.

Return type:

bool

Adds an allowed alternate subject name match. Until at least one match is added, the altSubjectName of the remote authentication server is not verified.

add_eap_method(eap)
Parameters:

eap (str) – the name of the EAP method to allow for this connection

Returns:

True if the EAP method was successfully added, False if it was not a valid method or if it was already allowed.

Return type:

bool

Adds an allowed EAP method. The setting is not valid until at least one EAP method has been added. See NM.Setting8021x :eap property for a list of allowed EAP methods.

add_phase2_altsubject_match(phase2_altsubject_match)
Parameters:

phase2_altsubject_match (str) – the “phase 2” altSubjectName to allow for this connection

Returns:

True if the “phase 2” alternative subject name match was successfully added, False if it was already allowed.

Return type:

bool

Adds an allowed alternate subject name match for “phase 2”. Until at least one match is added, the altSubjectName of the “phase 2” remote authentication server is not verified.

clear_altsubject_matches()

Clears all altSubjectName matches.

clear_eap_methods()

Clears all allowed EAP methods.

clear_phase2_altsubject_matches()

Clears all “phase 2” altSubjectName matches.

get_altsubject_match(i)
Parameters:

i (int) – the zero-based index of the array of altSubjectName matches

Returns:

the altSubjectName match at index i

Return type:

str

Returns the altSubjectName match at index i.

get_anonymous_identity()
Returns:

the anonymous identifier

Return type:

str

Returns the anonymous identifier used by some EAP methods (like TTLS) to authenticate the user in the outer unencrypted “phase 1” authentication. The inner “phase 2” authentication will use the NM.Setting8021x :identity in a secure form, if applicable for that EAP method.

get_auth_timeout()
Returns:

the configured authentication timeout in seconds. Zero means the global default value.

Return type:

int

Returns the value contained in the NM.Setting8021x :auth-timeout property.

New in version 1.8.

get_ca_cert_blob()
Returns:

the CA certificate data

Return type:

GLib.Bytes

Returns the CA certificate blob if the CA certificate is stored using the NM.Setting8021xCKScheme.BLOB scheme. Not all EAP methods use a CA certificate (LEAP for example), and those that can take advantage of the CA certificate allow it to be unset. Note that lack of a CA certificate reduces security by allowing man-in-the-middle attacks, because the identity of the network cannot be confirmed by the client.

get_ca_cert_password()
Returns:

the password used to access the CA certificate stored in NM.Setting8021x :ca-cert property. Only makes sense if the certificate is stored on a PKCS# 11 token that requires a login.

Return type:

str

New in version 1.8.

get_ca_cert_password_flags()
Returns:

the NM.SettingSecretFlags pertaining to the NM.Setting8021x :ca-cert-password

Return type:

NM.SettingSecretFlags

New in version 1.8.

get_ca_cert_path()
Returns:

path to the CA certificate file

Return type:

str

Returns the CA certificate path if the CA certificate is stored using the NM.Setting8021xCKScheme.PATH scheme. Not all EAP methods use a CA certificate (LEAP for example), and those that can take advantage of the CA certificate allow it to be unset. Note that lack of a CA certificate reduces security by allowing man-in-the-middle attacks, because the identity of the network cannot be confirmed by the client.

get_ca_cert_scheme()
Returns:

scheme used to store the CA certificate (blob or path)

Return type:

NM.Setting8021xCKScheme

Returns the scheme used to store the CA certificate. If the returned scheme is NM.Setting8021xCKScheme.BLOB, use NM.Setting8021x.get_ca_cert_blob(); if NM.Setting8021xCKScheme.PATH, use NM.Setting8021x.get_ca_cert_path(); if NM.Setting8021xCKScheme.PKCS11, use NM.Setting8021x.get_ca_cert_uri().

get_ca_cert_uri()
Returns:

the URI string

Return type:

str

Returns the CA certificate URI analogously to NM.Setting8021x.get_ca_cert_blob() and NM.Setting8021x.get_ca_cert_path().

Currently, it’s limited to PKCS#11 URIs (‘pkcs11’ scheme as defined by RFC 7512), but may be extended to other schemes in future (such as ‘file’ URIs for local files and ‘data’ URIs for inline certificate data).

New in version 1.6.

get_ca_path()
Returns:

the CA certificate directory path

Return type:

str

Returns the path of the CA certificate directory if previously set. Systems will often have a directory that contains multiple individual CA certificates which the supplicant can then add to the verification chain. This may be used in addition to the NM.Setting8021x :ca-cert property to add more CA certificates for verifying the network to client.

get_client_cert_blob()
Returns:

the client certificate data

Return type:

GLib.Bytes

Client certificates are used to identify the connecting client to the network when EAP-TLS is used as either the “phase 1” or “phase 2” 802.1x authentication method.

get_client_cert_password()
Returns:

the password used to access the client certificate stored in NM.Setting8021x :client-cert property. Only makes sense if the certificate is stored on a PKCS# 11 token that requires a login.

Return type:

str

New in version 1.8.

get_client_cert_password_flags()
Returns:

the NM.SettingSecretFlags pertaining to the NM.Setting8021x :client-cert-password

Return type:

NM.SettingSecretFlags

New in version 1.8.

get_client_cert_path()
Returns:

path to the client certificate file

Return type:

str

Client certificates are used to identify the connecting client to the network when EAP-TLS is used as either the “phase 1” or “phase 2” 802.1x authentication method.

get_client_cert_scheme()
Returns:

scheme used to store the client certificate (blob or path)

Return type:

NM.Setting8021xCKScheme

Returns the scheme used to store the client certificate. If the returned scheme is NM.Setting8021xCKScheme.BLOB, use NM.Setting8021x.get_client_cert_blob(); if NM.Setting8021xCKScheme.PATH, use NM.Setting8021x.get_client_cert_path(); if NM.Setting8021xCKScheme.PKCS11, use NM.Setting8021x.get_client_cert_uri().

get_client_cert_uri()
Returns:

the URI string

Return type:

str

Returns the client certificate URI analogously to NM.Setting8021x.get_client_cert_blob() and NM.Setting8021x.get_client_cert_path().

Currently, it’s limited to PKCS#11 URIs (‘pkcs11’ scheme as defined by RFC 7512), but may be extended to other schemes in future (such as ‘file’ URIs for local files and ‘data’ URIs for inline certificate data).

New in version 1.6.

get_domain_match()
Returns:

the NM.Setting8021x :domain-match property.

Return type:

str

New in version 1.24.

get_domain_suffix_match()
Returns:

the NM.Setting8021x :domain-suffix-match property.

Return type:

str

New in version 1.2.

get_eap_method(i)
Parameters:

i (int) – the index of the EAP method name to return

Returns:

the name of the allowed EAP method at index i

Return type:

str

Returns the name of the allowed EAP method at index i.

get_identity()
Returns:

the user identifier

Return type:

str

Returns the identifier used by some EAP methods (like TLS) to authenticate the user. Often this is a username or login name.

get_num_altsubject_matches()
Returns:

the number of altsubject-matches entries.

Return type:

int

Returns the number of entries in the NM.Setting8021x :altsubject-matches property of this setting.

get_num_eap_methods()
Returns:

the number of allowed EAP methods

Return type:

int

Returns the number of eap methods allowed for use when connecting to the network. Generally only one EAP method is used. Use the functions NM.Setting8021x.get_eap_method(), NM.Setting8021x.add_eap_method(), and NM.Setting8021x.remove_eap_method() for adding, removing, and retrieving allowed EAP methods.

get_num_phase2_altsubject_matches()
Returns:

the number of phase2-altsubject-matches entries.

Return type:

int

Returns the number of entries in the NM.Setting8021x :phase2-altsubject-matches property of this setting.

get_optional()
Returns:

True if the activation should proceed even when the 802.1X authentication fails; False otherwise

Return type:

bool

Returns the value contained in the NM.Setting8021x :optional property.

New in version 1.22.

get_pac_file()
Returns:

the PAC file

Return type:

str

Returns the file containing PAC credentials used by EAP-FAST method.

get_password()
Returns:

the password used by the authentication method, if any, as specified by the NM.Setting8021x :password property

Return type:

str

get_password_flags()
Returns:

the NM.SettingSecretFlags pertaining to the NM.Setting8021x :password

Return type:

NM.SettingSecretFlags

get_password_raw()
Returns:

the password used by the authentication method as a UTF-8-encoded array of bytes, as specified by the NM.Setting8021x :password-raw property

Return type:

GLib.Bytes

get_password_raw_flags()
Returns:

the NM.SettingSecretFlags pertaining to the NM.Setting8021x :password-raw

Return type:

NM.SettingSecretFlags

get_phase1_auth_flags()
Returns:

the authentication flags for “phase 1”.

Return type:

NM.Setting8021xAuthFlags

New in version 1.8.

get_phase1_fast_provisioning()
Returns:

whether “phase 1” PEAP fast provisioning should be used, as specified by the NM.Setting8021x :phase1-fast-provisioning property. See the wpa_supplicant documentation for more details.

Return type:

str

get_phase1_peaplabel()
Returns:

whether the “phase 1” PEAP label is new-style or old-style, to be used when authenticating with EAP-PEAP, as contained in the NM.Setting8021x :phase1-peaplabel property. Valid values are None (unset), “0” (use old-style label), and “1” (use new-style label). See the wpa_supplicant documentation for more details.

Return type:

str

get_phase1_peapver()
Returns:

the “phase 1” PEAP version to be used when authenticating with EAP-PEAP as contained in the NM.Setting8021x :phase1-peapver property. Valid values are None (unset), “0” (PEAP version 0), and “1” (PEAP version 1).

Return type:

str

get_phase2_altsubject_match(i)
Parameters:

i (int) – the zero-based index of the array of “phase 2” altSubjectName matches

Returns:

the “phase 2” altSubjectName match at index i

Return type:

str

Returns the “phase 2” altSubjectName match at index i.

get_phase2_auth()
Returns:

the “phase 2” non-EAP (ex MD5) allowed authentication method as specified by the NM.Setting8021x :phase2-auth property.

Return type:

str

get_phase2_autheap()
Returns:

the “phase 2” EAP-based (ex TLS) allowed authentication method as specified by the NM.Setting8021x :phase2-autheap property.

Return type:

str

get_phase2_ca_cert_blob()
Returns:

the “phase 2” CA certificate data

Return type:

GLib.Bytes

Returns the “phase 2” CA certificate blob if the CA certificate is stored using the NM.Setting8021xCKScheme.BLOB scheme. Not all EAP methods use a CA certificate (LEAP for example), and those that can take advantage of the CA certificate allow it to be unset. Note that lack of a CA certificate reduces security by allowing man-in-the-middle attacks, because the identity of the network cannot be confirmed by the client.

get_phase2_ca_cert_password()
Returns:

the password used to access the “phase2” CA certificate stored in NM.Setting8021x :phase2-ca-cert property. Only makes sense if the certificate is stored on a PKCS# 11 token that requires a login.

Return type:

str

New in version 1.8.

get_phase2_ca_cert_password_flags()
Returns:

the NM.SettingSecretFlags pertaining to the NM.Setting8021x :phase2-private-key-password

Return type:

NM.SettingSecretFlags

New in version 1.8.

get_phase2_ca_cert_path()
Returns:

path to the “phase 2” CA certificate file

Return type:

str

Returns the “phase 2” CA certificate path if the CA certificate is stored using the NM.Setting8021xCKScheme.PATH scheme. Not all EAP methods use a CA certificate (LEAP for example), and those that can take advantage of the CA certificate allow it to be unset. Note that lack of a CA certificate reduces security by allowing man-in-the-middle attacks, because the identity of the network cannot be confirmed by the client.

get_phase2_ca_cert_scheme()
Returns:

scheme used to store the “phase 2” CA certificate (blob or path)

Return type:

NM.Setting8021xCKScheme

Returns the scheme used to store the “phase 2” CA certificate. If the returned scheme is NM.Setting8021xCKScheme.BLOB, use NM.Setting8021x.get_ca_cert_blob(); if NM.Setting8021xCKScheme.PATH, use NM.Setting8021x.get_ca_cert_path(); if NM.Setting8021xCKScheme.PKCS11, use NM.Setting8021x.get_ca_cert_uri().

get_phase2_ca_cert_uri()
Returns:

the URI string

Return type:

str

Returns the “phase 2” CA certificate URI analogously to NM.Setting8021x.get_phase2_ca_cert_blob() and NM.Setting8021x.get_phase2_ca_cert_path().

Currently, it’s limited to PKCS# 11 URIs (‘pkcs11’ scheme as defined by RFC 7512), but may be extended to other schemes in future (such as ‘file’ URIs for local files and ‘data’ URIs for inline certificate data).

New in version 1.6.

get_phase2_ca_path()
Returns:

the “phase 2” CA certificate directory path

Return type:

str

Returns the path of the “phase 2” CA certificate directory if previously set. Systems will often have a directory that contains multiple individual CA certificates which the supplicant can then add to the verification chain. This may be used in addition to the NM.Setting8021x :phase2-ca-cert property to add more CA certificates for verifying the network to client.

get_phase2_client_cert_blob()
Returns:

the “phase 2” client certificate data

Return type:

GLib.Bytes

Client certificates are used to identify the connecting client to the network when EAP-TLS is used as either the “phase 1” or “phase 2” 802.1x authentication method.

get_phase2_client_cert_password()
Returns:

the password used to access the “phase2” client certificate stored in NM.Setting8021x :phase2-client-cert property. Only makes sense if the certificate is stored on a PKCS# 11 token that requires a login.

Return type:

str

New in version 1.8.

get_phase2_client_cert_password_flags()
Returns:

the NM.SettingSecretFlags pertaining to the NM.Setting8021x :phase2-client-cert-password

Return type:

NM.SettingSecretFlags

New in version 1.8.

get_phase2_client_cert_path()
Returns:

path to the “phase 2” client certificate file

Return type:

str

Client certificates are used to identify the connecting client to the network when EAP-TLS is used as either the “phase 1” or “phase 2” 802.1x authentication method.

get_phase2_client_cert_scheme()
Returns:

scheme used to store the “phase 2” client certificate (blob or path)

Return type:

NM.Setting8021xCKScheme

Returns the scheme used to store the “phase 2” client certificate. If the returned scheme is NM.Setting8021xCKScheme.BLOB, use NM.Setting8021x.get_client_cert_blob(); if NM.Setting8021xCKScheme.PATH, use NM.Setting8021x.get_client_cert_path(); if NM.Setting8021xCKScheme.PKCS11, use NM.Setting8021x.get_client_cert_uri().

get_phase2_client_cert_uri()
Returns:

the URI string

Return type:

str

Returns the “phase 2” client certificate URI analogously to NM.Setting8021x.get_phase2_ca_cert_blob() and NM.Setting8021x.get_phase2_ca_cert_path().

Currently, it’s limited to PKCS# 11 URIs (‘pkcs11’ scheme as defined by RFC 7512), but may be extended to other schemes in future (such as ‘file’ URIs for local files and ‘data’ URIs for inline certificate data).

New in version 1.6.

get_phase2_domain_match()
Returns:

the NM.Setting8021x :phase2-domain-match property.

Return type:

str

New in version 1.24.

get_phase2_domain_suffix_match()
Returns:

the NM.Setting8021x :phase2-domain-suffix-match property.

Return type:

str

New in version 1.2.

get_phase2_private_key_blob()
Returns:

the “phase 2” private key data

Return type:

GLib.Bytes

Private keys are used to authenticate the connecting client to the network when EAP-TLS is used as either the “phase 1” or “phase 2” 802.1x authentication method.

WARNING: the phase2 private key property is not a “secret” property, and thus unencrypted private key data may be readable by unprivileged users. Private keys should always be encrypted with a private key password.

get_phase2_private_key_format()
Returns:

the data format of the “phase 2” private key data stored in the NM.Setting8021x :phase2-private-key property

Return type:

NM.Setting8021xCKFormat

get_phase2_private_key_password()
Returns:

the private key password used to decrypt the private key if previously set with NM.Setting8021x.set_phase2_private_key() or the NM.Setting8021x :phase2-private-key-password property.

Return type:

str

get_phase2_private_key_password_flags()
Returns:

the NM.SettingSecretFlags pertaining to the NM.Setting8021x :phase2-private-key-password

Return type:

NM.SettingSecretFlags

get_phase2_private_key_path()
Returns:

path to the “phase 2” private key file

Return type:

str

Private keys are used to authenticate the connecting client to the network when EAP-TLS is used as either the “phase 1” or “phase 2” 802.1x authentication method.

get_phase2_private_key_scheme()
Returns:

scheme used to store the “phase 2” private key (blob or path)

Return type:

NM.Setting8021xCKScheme

Returns the scheme used to store the “phase 2” private key. If the returned scheme is NM.Setting8021xCKScheme.BLOB, use NM.Setting8021x.get_client_cert_blob(); if NM.Setting8021xCKScheme.PATH, use NM.Setting8021x.get_client_cert_path(); if NM.Setting8021xCKScheme.PKCS11, use NM.Setting8021x.get_client_cert_uri().

get_phase2_private_key_uri()
Returns:

the URI string

Return type:

str

Returns the “phase 2” private key URI analogously to NM.Setting8021x.get_phase2_private_key_blob() and NM.Setting8021x.get_phase2_private_key_path().

Currently, it’s limited to PKCS# 11 URIs (‘pkcs11’ scheme as defined by RFC 7512), but may be extended to other schemes in future (such as ‘file’ URIs for local files and ‘data’ URIs for inline certificate data).

New in version 1.6.

get_phase2_subject_match()
Returns:

the NM.Setting8021x :phase2-subject-match property. This is the substring to be matched against the subject of the “phase 2” authentication server certificate, or None no subject verification is to be performed.

Return type:

str

get_pin()
Returns:

the PIN used by the authentication method, if any, as specified by the NM.Setting8021x :pin property

Return type:

str

get_pin_flags()
Returns:

the NM.SettingSecretFlags pertaining to the NM.Setting8021x :pin

Return type:

NM.SettingSecretFlags

get_private_key_blob()
Returns:

the private key data

Return type:

GLib.Bytes

Private keys are used to authenticate the connecting client to the network when EAP-TLS is used as either the “phase 1” or “phase 2” 802.1x authentication method.

WARNING: the private key property is not a “secret” property, and thus unencrypted private key data may be readable by unprivileged users. Private keys should always be encrypted with a private key password.

get_private_key_format()
Returns:

the data format of the private key data stored in the NM.Setting8021x :private-key property

Return type:

NM.Setting8021xCKFormat

get_private_key_password()
Returns:

the private key password used to decrypt the private key if previously set with NM.Setting8021x.set_private_key(), or the NM.Setting8021x :private-key-password property.

Return type:

str

get_private_key_password_flags()
Returns:

the NM.SettingSecretFlags pertaining to the NM.Setting8021x :private-key-password

Return type:

NM.SettingSecretFlags

get_private_key_path()
Returns:

path to the private key file

Return type:

str

Private keys are used to authenticate the connecting client to the network when EAP-TLS is used as either the “phase 1” or “phase 2” 802.1x authentication method.

get_private_key_scheme()
Returns:

scheme used to store the private key (blob or path)

Return type:

NM.Setting8021xCKScheme

Returns the scheme used to store the private key. If the returned scheme is NM.Setting8021xCKScheme.BLOB, use NM.Setting8021x.get_client_cert_blob(); if NM.Setting8021xCKScheme.PATH, use NM.Setting8021x.get_client_cert_path(); if NM.Setting8021xCKScheme.PKCS11, use NM.Setting8021x.get_client_cert_uri().

get_private_key_uri()
Returns:

the URI string

Return type:

str

Returns the private key URI analogously to NM.Setting8021x.get_private_key_blob() and NM.Setting8021x.get_private_key_path().

Currently, it’s limited to PKCS# 11 URIs (‘pkcs11’ scheme as defined by RFC 7512), but may be extended to other schemes in future (such as ‘file’ URIs for local files and ‘data’ URIs for inline certificate data).

New in version 1.6.

get_subject_match()
Returns:

the NM.Setting8021x :subject-match property. This is the substring to be matched against the subject of the authentication server certificate, or None no subject verification is to be performed.

Return type:

str

get_system_ca_certs()
Returns:

True if a system CA certificate path should be used, False if not

Return type:

bool

Sets the NM.Setting8021x :system-ca-certs property. The NM.Setting8021x :ca-path and NM.Setting8021x :phase2-ca-path properties are ignored if the NM.Setting8021x :system-ca-certs property is True, in which case a system-wide CA certificate directory specified at compile time (using the –system-ca-path configure option) is used in place of these properties.

remove_altsubject_match(i)
Parameters:

i (int) – the index of the altSubjectName match to remove

Removes the allowed altSubjectName at the specified index.

remove_altsubject_match_by_value(altsubject_match)
Parameters:

altsubject_match (str) – the altSubjectName to remove

Returns:

True if the alternative subject name match was found and removed, False if it was not.

Return type:

bool

Removes the allowed altSubjectName altsubject_match.

remove_eap_method(i)
Parameters:

i (int) – the index of the EAP method to remove

Removes the allowed EAP method at the specified index.

remove_eap_method_by_value(eap)
Parameters:

eap (str) – the name of the EAP method to remove

Returns:

True if the EAP method was founs and removed, False if it was not.

Return type:

bool

Removes the allowed EAP method method.

remove_phase2_altsubject_match(i)
Parameters:

i (int) – the index of the “phase 2” altSubjectName match to remove

Removes the allowed “phase 2” altSubjectName at the specified index.

remove_phase2_altsubject_match_by_value(phase2_altsubject_match)
Parameters:

phase2_altsubject_match (str) – the “phase 2” altSubjectName to remove

Returns:

True if the alternative subject name match for “phase 2” was found and removed, False if it was not.

Return type:

bool

Removes the allowed “phase 2” altSubjectName phase2_altsubject_match.

set_ca_cert(value, scheme, out_format)
Parameters:
Raises:

GLib.Error

Returns:

True if the operation succeeded, False if it was unsuccessful

Return type:

bool

Reads a certificate from disk and sets the NM.Setting8021x :ca-cert property with the raw certificate data if using the NM.Setting8021xCKScheme.BLOB scheme, or with the path to the certificate file if using the NM.Setting8021xCKScheme.PATH scheme.

set_client_cert(value, scheme, out_format)
Parameters:
Raises:

GLib.Error

Returns:

True if the operation succeeded, False if it was unsuccessful

Return type:

bool

Reads a certificate from disk and sets the NM.Setting8021x :client-cert property with the raw certificate data if using the NM.Setting8021xCKScheme.BLOB scheme, or with the path to the certificate file if using the NM.Setting8021xCKScheme.PATH scheme.

Client certificates are used to identify the connecting client to the network when EAP-TLS is used as either the “phase 1” or “phase 2” 802.1x authentication method.

set_phase2_ca_cert(value, scheme, out_format)
Parameters:
Raises:

GLib.Error

Returns:

True if the operation succeeded, False if it was unsuccessful

Return type:

bool

Reads a certificate from disk and sets the NM.Setting8021x :phase2-ca-cert property with the raw certificate data if using the NM.Setting8021xCKScheme.BLOB scheme, or with the path to the certificate file if using the NM.Setting8021xCKScheme.PATH scheme.

set_phase2_client_cert(value, scheme, out_format)
Parameters:
Raises:

GLib.Error

Returns:

True if the operation succeeded, False if it was unsuccessful

Return type:

bool

Reads a certificate from disk and sets the NM.Setting8021x :phase2-client-cert property with the raw certificate data if using the NM.Setting8021xCKScheme.BLOB scheme, or with the path to the certificate file if using the NM.Setting8021xCKScheme.PATH scheme.

Client certificates are used to identify the connecting client to the network when EAP-TLS is used as either the “phase 1” or “phase 2” 802.1x authentication method.

set_phase2_private_key(value, password, scheme, out_format)
Parameters:
  • value (str) – when scheme is set to either NM.Setting8021xCKScheme.PATH or NM.Setting8021xCKScheme.BLOB, pass the path of the “phase2” private key file (PEM, DER, or PKCS# 12 format). The path must be UTF-8 encoded; use GLib.filename_to_utf8() to convert if needed. Passing None with any scheme clears the private key.

  • password (str) – password used to decrypt the private key, or None if the password is unknown. If the password is given but fails to decrypt the private key, an error is returned.

  • scheme (NM.Setting8021xCKScheme) – desired storage scheme for the private key

  • out_format (NM.Setting8021xCKFormat) – on successful return, the type of the private key added

Raises:

GLib.Error

Returns:

True if the operation succeeded, False if it was unsuccessful

Return type:

bool

Private keys are used to authenticate the connecting client to the network when EAP-TLS is used as either the “phase 1” or “phase 2” 802.1x authentication method.

This function reads a private key from disk and sets the NM.Setting8021x :phase2-private-key property with the private key file data if using the NM.Setting8021xCKScheme.BLOB scheme, or with the path to the private key file if using the NM.Setting8021xCKScheme.PATH scheme.

If password is given, this function attempts to decrypt the private key to verify that password is correct, and if it is, updates the NM.Setting8021x :phase2-private-key-password property with the given password. If the decryption is unsuccessful, False is returned, error is set, and no internal data is changed. If no password is given, the private key is assumed to be valid, no decryption is performed, and the password may be set at a later time.

WARNING: the “phase2” private key property is not a “secret” property, and thus unencrypted private key data using the BLOB scheme may be readable by unprivileged users. Private keys should always be encrypted with a private key password to prevent unauthorized access to unencrypted private key data.

set_private_key(value, password, scheme, out_format)
Parameters:
Raises:

GLib.Error

Returns:

True if the operation succeeded, False if it was unsuccessful

Return type:

bool

Private keys are used to authenticate the connecting client to the network when EAP-TLS is used as either the “phase 1” or “phase 2” 802.1x authentication method.

This function reads a private key from disk and sets the NM.Setting8021x :private-key property with the private key file data if using the NM.Setting8021xCKScheme.BLOB scheme, or with the path to the private key file if using the NM.Setting8021xCKScheme.PATH scheme.

If password is given, this function attempts to decrypt the private key to verify that password is correct, and if it is, updates the NM.Setting8021x :private-key-password property with the given password. If the decryption is unsuccessful, False is returned, error is set, and no internal data is changed. If no password is given, the private key is assumed to be valid, no decryption is performed, and the password may be set at a later time.

WARNING: the private key property is not a “secret” property, and thus unencrypted private key data using the BLOB scheme may be readable by unprivileged users. Private keys should always be encrypted with a private key password to prevent unauthorized access to unencrypted private key data.

Property Details

NM.Setting8021x.props.altsubject_matches
Name:

altsubject-matches

Type:

[str]

Default Value:

[]

Flags:

READABLE, WRITABLE

List of strings to be matched against the altSubjectName of the certificate presented by the authentication server. If the list is empty, no verification of the server certificate’s altSubjectName is performed.

NM.Setting8021x.props.anonymous_identity
Name:

anonymous-identity

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Anonymous identity string for EAP authentication methods. Used as the unencrypted identity with EAP types that support different tunneled identity like EAP-TTLS.

NM.Setting8021x.props.auth_timeout
Name:

auth-timeout

Type:

int

Default Value:

0

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

A timeout for the authentication. Zero means the global default; if the global default is not set, the authentication timeout is 25 seconds.

New in version 1.8.

NM.Setting8021x.props.ca_cert
Name:

ca-cert

Type:

GLib.Bytes

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Contains the CA certificate if used by the EAP method specified in the NM.Setting8021x :eap property.

Certificate data is specified using a “scheme”; three are currently supported: blob, path and pkcs#11 URL. When using the blob scheme this property should be set to the certificate’s DER encoded data. When using the path scheme, this property should be set to the full UTF-8 encoded path of the certificate, prefixed with the string “file://” and ending with a terminating NUL byte. This property can be unset even if the EAP method supports CA certificates, but this allows man-in-the-middle attacks and is NOT recommended.

Note that enabling NM.Setting8021x :system-ca-certs will override this setting to use the built-in path, if the built-in path is not a directory.

Setting this property directly is discouraged; use the NM.Setting8021x.set_ca_cert() function instead.

NM.Setting8021x.props.ca_cert_password
Name:

ca-cert-password

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

The password used to access the CA certificate stored in NM.Setting8021x :ca-cert property. Only makes sense if the certificate is stored on a PKCS# 11 token that requires a login.

New in version 1.8.

NM.Setting8021x.props.ca_cert_password_flags
Name:

ca-cert-password-flags

Type:

NM.SettingSecretFlags

Default Value:

NM.SettingSecretFlags.NONE

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Flags indicating how to handle the NM.Setting8021x :ca-cert-password property.

New in version 1.8.

NM.Setting8021x.props.ca_path
Name:

ca-path

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

UTF-8 encoded path to a directory containing PEM or DER formatted certificates to be added to the verification chain in addition to the certificate specified in the NM.Setting8021x :ca-cert property.

If NM.Setting8021x :system-ca-certs is enabled and the built-in CA path is an existing directory, then this setting is ignored.

NM.Setting8021x.props.client_cert
Name:

client-cert

Type:

GLib.Bytes

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Contains the client certificate if used by the EAP method specified in the NM.Setting8021x :eap property.

Certificate data is specified using a “scheme”; two are currently supported: blob and path. When using the blob scheme (which is backwards compatible with NM 0.7.x) this property should be set to the certificate’s DER encoded data. When using the path scheme, this property should be set to the full UTF-8 encoded path of the certificate, prefixed with the string “file://” and ending with a terminating NUL byte.

Setting this property directly is discouraged; use the NM.Setting8021x.set_client_cert() function instead.

NM.Setting8021x.props.client_cert_password
Name:

client-cert-password

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

The password used to access the client certificate stored in NM.Setting8021x :client-cert property. Only makes sense if the certificate is stored on a PKCS# 11 token that requires a login.

New in version 1.8.

NM.Setting8021x.props.client_cert_password_flags
Name:

client-cert-password-flags

Type:

NM.SettingSecretFlags

Default Value:

NM.SettingSecretFlags.NONE

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Flags indicating how to handle the NM.Setting8021x :client-cert-password property.

New in version 1.8.

NM.Setting8021x.props.domain_match
Name:

domain-match

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Constraint for server domain name. If set, this list of FQDNs is used as a match requirement for dNSName element(s) of the certificate presented by the authentication server. If a matching dNSName is found, this constraint is met. If no dNSName values are present, this constraint is matched against SubjectName CN using the same comparison. Multiple valid FQDNs can be passed as a “;” delimited list.

New in version 1.24.

NM.Setting8021x.props.domain_suffix_match
Name:

domain-suffix-match

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Constraint for server domain name. If set, this FQDN is used as a suffix match requirement for dNSName element(s) of the certificate presented by the authentication server. If a matching dNSName is found, this constraint is met. If no dNSName values are present, this constraint is matched against SubjectName CN using same suffix match comparison. Since version 1.24, multiple valid FQDNs can be passed as a “;” delimited list.

New in version 1.2.

NM.Setting8021x.props.eap
Name:

eap

Type:

[str]

Default Value:

[]

Flags:

READABLE, WRITABLE

The allowed EAP method to be used when authenticating to the network with 802.1x. Valid methods are: “leap”, “md5”, “tls”, “peap”, “ttls”, “pwd”, and “fast”. Each method requires different configuration using the properties of this setting; refer to wpa_supplicant documentation for the allowed combinations.

NM.Setting8021x.props.identity
Name:

identity

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Identity string for EAP authentication methods. Often the user’s user or login name.

NM.Setting8021x.props.optional
Name:

optional

Type:

bool

Default Value:

False

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Whether the 802.1X authentication is optional. If True, the activation will continue even after a timeout or an authentication failure. Setting the property to True is currently allowed only for Ethernet connections. If set to False, the activation can continue only after a successful authentication.

New in version 1.22.

NM.Setting8021x.props.pac_file
Name:

pac-file

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

UTF-8 encoded file path containing PAC for EAP-FAST.

NM.Setting8021x.props.password
Name:

password

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

UTF-8 encoded password used for EAP authentication methods. If both the NM.Setting8021x :password property and the NM.Setting8021x :password-raw property are specified, NM.Setting8021x :password is preferred.

NM.Setting8021x.props.password_flags
Name:

password-flags

Type:

NM.SettingSecretFlags

Default Value:

NM.SettingSecretFlags.NONE

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Flags indicating how to handle the NM.Setting8021x :password property.

NM.Setting8021x.props.password_raw
Name:

password-raw

Type:

GLib.Bytes

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Password used for EAP authentication methods, given as a byte array to allow passwords in other encodings than UTF-8 to be used. If both the NM.Setting8021x :password property and the NM.Setting8021x :password-raw property are specified, NM.Setting8021x :password is preferred.

NM.Setting8021x.props.password_raw_flags
Name:

password-raw-flags

Type:

NM.SettingSecretFlags

Default Value:

NM.SettingSecretFlags.NONE

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Flags indicating how to handle the NM.Setting8021x :password-raw property.

NM.Setting8021x.props.phase1_auth_flags
Name:

phase1-auth-flags

Type:

int

Default Value:

0

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Specifies authentication flags to use in “phase 1” outer authentication using NM.Setting8021xAuthFlags options. The individual TLS versions can be explicitly disabled. TLS time checks can be also disabled. If a certain TLS disable flag is not set, it is up to the supplicant to allow or forbid it. The TLS options map to tls_disable_tlsv1_x and tls_disable_time_checks settings. See the wpa_supplicant documentation for more details.

New in version 1.8.

NM.Setting8021x.props.phase1_fast_provisioning
Name:

phase1-fast-provisioning

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Enables or disables in-line provisioning of EAP-FAST credentials when FAST is specified as the EAP method in the NM.Setting8021x :eap property. Recognized values are “0” (disabled), “1” (allow unauthenticated provisioning), “2” (allow authenticated provisioning), and “3” (allow both authenticated and unauthenticated provisioning). See the wpa_supplicant documentation for more details.

NM.Setting8021x.props.phase1_peaplabel
Name:

phase1-peaplabel

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Forces use of the new PEAP label during key derivation. Some RADIUS servers may require forcing the new PEAP label to interoperate with PEAPv1. Set to “1” to force use of the new PEAP label. See the wpa_supplicant documentation for more details.

NM.Setting8021x.props.phase1_peapver
Name:

phase1-peapver

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Forces which PEAP version is used when PEAP is set as the EAP method in the NM.Setting8021x :eap property. When unset, the version reported by the server will be used. Sometimes when using older RADIUS servers, it is necessary to force the client to use a particular PEAP version. To do so, this property may be set to “0” or “1” to force that specific PEAP version.

NM.Setting8021x.props.phase2_altsubject_matches
Name:

phase2-altsubject-matches

Type:

[str]

Default Value:

[]

Flags:

READABLE, WRITABLE

List of strings to be matched against the altSubjectName of the certificate presented by the authentication server during the inner “phase 2” authentication. If the list is empty, no verification of the server certificate’s altSubjectName is performed.

NM.Setting8021x.props.phase2_auth
Name:

phase2-auth

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Specifies the allowed “phase 2” inner authentication method when an EAP method that uses an inner TLS tunnel is specified in the NM.Setting8021x :eap property. For TTLS this property selects one of the supported non-EAP inner methods: “pap”, “chap”, “mschap”, “mschapv2” while NM.Setting8021x :phase2-autheap selects an EAP inner method. For PEAP this selects an inner EAP method, one of: “gtc”, “otp”, “md5” and “tls”. Each “phase 2” inner method requires specific parameters for successful authentication; see the wpa_supplicant documentation for more details. Both NM.Setting8021x :phase2-auth and NM.Setting8021x :phase2-autheap cannot be specified.

NM.Setting8021x.props.phase2_autheap
Name:

phase2-autheap

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Specifies the allowed “phase 2” inner EAP-based authentication method when TTLS is specified in the NM.Setting8021x :eap property. Recognized EAP-based “phase 2” methods are “md5”, “mschapv2”, “otp”, “gtc”, and “tls”. Each “phase 2” inner method requires specific parameters for successful authentication; see the wpa_supplicant documentation for more details.

NM.Setting8021x.props.phase2_ca_cert
Name:

phase2-ca-cert

Type:

GLib.Bytes

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Contains the “phase 2” CA certificate if used by the EAP method specified in the NM.Setting8021x :phase2-auth or NM.Setting8021x :phase2-autheap properties.

Certificate data is specified using a “scheme”; three are currently supported: blob, path and pkcs#11 URL. When using the blob scheme this property should be set to the certificate’s DER encoded data. When using the path scheme, this property should be set to the full UTF-8 encoded path of the certificate, prefixed with the string “file://” and ending with a terminating NUL byte. This property can be unset even if the EAP method supports CA certificates, but this allows man-in-the-middle attacks and is NOT recommended.

Note that enabling NM.Setting8021x :system-ca-certs will override this setting to use the built-in path, if the built-in path is not a directory.

Setting this property directly is discouraged; use the NM.Setting8021x.set_phase2_ca_cert() function instead.

NM.Setting8021x.props.phase2_ca_cert_password
Name:

phase2-ca-cert-password

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

The password used to access the “phase2” CA certificate stored in NM.Setting8021x :phase2-ca-cert property. Only makes sense if the certificate is stored on a PKCS# 11 token that requires a login.

New in version 1.8.

NM.Setting8021x.props.phase2_ca_cert_password_flags
Name:

phase2-ca-cert-password-flags

Type:

NM.SettingSecretFlags

Default Value:

NM.SettingSecretFlags.NONE

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Flags indicating how to handle the NM.Setting8021x :phase2-ca-cert-password property.

New in version 1.8.

NM.Setting8021x.props.phase2_ca_path
Name:

phase2-ca-path

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

UTF-8 encoded path to a directory containing PEM or DER formatted certificates to be added to the verification chain in addition to the certificate specified in the NM.Setting8021x :phase2-ca-cert property.

If NM.Setting8021x :system-ca-certs is enabled and the built-in CA path is an existing directory, then this setting is ignored.

NM.Setting8021x.props.phase2_client_cert
Name:

phase2-client-cert

Type:

GLib.Bytes

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Contains the “phase 2” client certificate if used by the EAP method specified in the NM.Setting8021x :phase2-auth or NM.Setting8021x :phase2-autheap properties.

Certificate data is specified using a “scheme”; two are currently supported: blob and path. When using the blob scheme (which is backwards compatible with NM 0.7.x) this property should be set to the certificate’s DER encoded data. When using the path scheme, this property should be set to the full UTF-8 encoded path of the certificate, prefixed with the string “file://” and ending with a terminating NUL byte. This property can be unset even if the EAP method supports CA certificates, but this allows man-in-the-middle attacks and is NOT recommended.

Setting this property directly is discouraged; use the NM.Setting8021x.set_phase2_client_cert() function instead.

NM.Setting8021x.props.phase2_client_cert_password
Name:

phase2-client-cert-password

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

The password used to access the “phase2” client certificate stored in NM.Setting8021x :phase2-client-cert property. Only makes sense if the certificate is stored on a PKCS# 11 token that requires a login.

New in version 1.8.

NM.Setting8021x.props.phase2_client_cert_password_flags
Name:

phase2-client-cert-password-flags

Type:

NM.SettingSecretFlags

Default Value:

NM.SettingSecretFlags.NONE

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Flags indicating how to handle the NM.Setting8021x :phase2-client-cert-password property.

New in version 1.8.

NM.Setting8021x.props.phase2_domain_match
Name:

phase2-domain-match

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Constraint for server domain name. If set, this list of FQDNs is used as a match requirement for dNSName element(s) of the certificate presented by the authentication server during the inner “phase 2” authentication. If a matching dNSName is found, this constraint is met. If no dNSName values are present, this constraint is matched against SubjectName CN using the same comparison. Multiple valid FQDNs can be passed as a “;” delimited list.

New in version 1.24.

NM.Setting8021x.props.phase2_domain_suffix_match
Name:

phase2-domain-suffix-match

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Constraint for server domain name. If set, this FQDN is used as a suffix match requirement for dNSName element(s) of the certificate presented by the authentication server during the inner “phase 2” authentication. If a matching dNSName is found, this constraint is met. If no dNSName values are present, this constraint is matched against SubjectName CN using same suffix match comparison. Since version 1.24, multiple valid FQDNs can be passed as a “;” delimited list.

New in version 1.2.

NM.Setting8021x.props.phase2_private_key
Name:

phase2-private-key

Type:

GLib.Bytes

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Contains the “phase 2” inner private key when the NM.Setting8021x :phase2-auth or NM.Setting8021x :phase2-autheap property is set to “tls”.

Key data is specified using a “scheme”; two are currently supported: blob and path. When using the blob scheme and private keys, this property should be set to the key’s encrypted PEM encoded data. When using private keys with the path scheme, this property should be set to the full UTF-8 encoded path of the key, prefixed with the string “file://” and ending with a terminating NUL byte. When using PKCS# 12 format private keys and the blob scheme, this property should be set to the PKCS# 12 data and the NM.Setting8021x :phase2-private-key-password property must be set to password used to decrypt the PKCS# 12 certificate and key. When using PKCS# 12 files and the path scheme, this property should be set to the full UTF-8 encoded path of the key, prefixed with the string “file://” and ending with a terminating NUL byte, and as with the blob scheme the NM.Setting8021x :phase2-private-key-password property must be set to the password used to decode the PKCS# 12 private key and certificate.

Setting this property directly is discouraged; use the NM.Setting8021x.set_phase2_private_key() function instead.

NM.Setting8021x.props.phase2_private_key_password
Name:

phase2-private-key-password

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

The password used to decrypt the “phase 2” private key specified in the NM.Setting8021x :phase2-private-key property when the private key either uses the path scheme, or is a PKCS# 12 format key. Setting this property directly is not generally necessary except when returning secrets to NetworkManager; it is generally set automatically when setting the private key by the NM.Setting8021x.set_phase2_private_key() function.

NM.Setting8021x.props.phase2_private_key_password_flags
Name:

phase2-private-key-password-flags

Type:

NM.SettingSecretFlags

Default Value:

NM.SettingSecretFlags.NONE

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Flags indicating how to handle the NM.Setting8021x :phase2-private-key-password property.

NM.Setting8021x.props.phase2_subject_match
Name:

phase2-subject-match

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Substring to be matched against the subject of the certificate presented by the authentication server during the inner “phase 2” authentication. When unset, no verification of the authentication server certificate’s subject is performed. This property provides little security, if any, and should not be used.

Deprecated since version 1.2: Use NM.Setting8021x :phase2-domain-suffix-match instead.

NM.Setting8021x.props.pin
Name:

pin

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

PIN used for EAP authentication methods.

NM.Setting8021x.props.pin_flags
Name:

pin-flags

Type:

NM.SettingSecretFlags

Default Value:

NM.SettingSecretFlags.NONE

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Flags indicating how to handle the NM.Setting8021x :pin property.

NM.Setting8021x.props.private_key
Name:

private-key

Type:

GLib.Bytes

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Contains the private key when the NM.Setting8021x :eap property is set to “tls”.

Key data is specified using a “scheme”; two are currently supported: blob and path. When using the blob scheme and private keys, this property should be set to the key’s encrypted PEM encoded data. When using private keys with the path scheme, this property should be set to the full UTF-8 encoded path of the key, prefixed with the string “file://” and ending with a terminating NUL byte. When using PKCS# 12 format private keys and the blob scheme, this property should be set to the PKCS# 12 data and the NM.Setting8021x :private-key-password property must be set to password used to decrypt the PKCS# 12 certificate and key. When using PKCS# 12 files and the path scheme, this property should be set to the full UTF-8 encoded path of the key, prefixed with the string “file://” and ending with a terminating NUL byte, and as with the blob scheme the “private-key-password” property must be set to the password used to decode the PKCS# 12 private key and certificate.

Setting this property directly is discouraged; use the NM.Setting8021x.set_private_key() function instead.

WARNING: NM.Setting8021x :private-key is not a “secret” property, and thus unencrypted private key data using the BLOB scheme may be readable by unprivileged users. Private keys should always be encrypted with a private key password to prevent unauthorized access to unencrypted private key data.

NM.Setting8021x.props.private_key_password
Name:

private-key-password

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

The password used to decrypt the private key specified in the NM.Setting8021x :private-key property when the private key either uses the path scheme, or if the private key is a PKCS# 12 format key. Setting this property directly is not generally necessary except when returning secrets to NetworkManager; it is generally set automatically when setting the private key by the NM.Setting8021x.set_private_key() function.

NM.Setting8021x.props.private_key_password_flags
Name:

private-key-password-flags

Type:

NM.SettingSecretFlags

Default Value:

NM.SettingSecretFlags.NONE

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Flags indicating how to handle the NM.Setting8021x :private-key-password property.

NM.Setting8021x.props.subject_match
Name:

subject-match

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Substring to be matched against the subject of the certificate presented by the authentication server. When unset, no verification of the authentication server certificate’s subject is performed. This property provides little security, if any, and should not be used.

Deprecated since version 1.2: Use NM.Setting8021x :phase2-domain-suffix-match instead.

NM.Setting8021x.props.system_ca_certs
Name:

system-ca-certs

Type:

bool

Default Value:

False

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

When True, overrides the NM.Setting8021x :ca-path and NM.Setting8021x :phase2-ca-path properties using the system CA directory specified at configure time with the –system-ca-path switch. The certificates in this directory are added to the verification chain in addition to any certificates specified by the NM.Setting8021x :ca-cert and NM.Setting8021x :phase2-ca-cert properties. If the path provided with –system-ca-path is rather a file name (bundle of trusted CA certificates), it overrides NM.Setting8021x :ca-cert and NM.Setting8021x :phase2-ca-cert properties instead (sets ca_cert/ca_cert2 options for wpa_supplicant).