# eric7.WebBrowser.WebAuth.Fido2ManagementDialog

Module implementing a dialog to manage FIDO2 security keys.

### Global Attributes

None

### Classes

Fido2ManagementDialog | Class implementing a dialog to manage FIDO2 security keys.

### Functions

None

## Fido2ManagementDialog

Class implementing a dialog to manage FIDO2 security keys.

### Derived from

QDialog, Ui_Fido2ManagementDialog

### Class Attributes

CredentialIdColumn
CredentialIdRole
DisplayNameColumn
RelyingPartyColumn
UserIdRole
UserNameColumn

### Class Methods

None

### Methods

Fido2ManagementDialog | Constructor
__aboutToShowManagementMenu | Private slot to prepare the security key management menu before it is shown.
__changePin | Private slot to change the PIN of the selected security key.
__checkPinStatus | Private method to check the PIN status of the connected security key.
__deviceConnected | Private slot handling the device connected signal.
__deviceDisconnected | Private slot handling the device disconnected signal.
__forcePinChange | Private slot to force a PIN change before the next use.
__getRequiredPin | Private method to check, if a pin has been set for the selected device, and ask the user to enter it.
__handleError | Private method to handle an error reported by the manager.
__initManagementMenu | Private method to initialize the security key management menu with actions not needed so much.
__populateDeviceSelector | Private slot to populate the device selector combo box.
__populatePasskeysList | Private slot to populate the list of store passkeys of the selected security key.
__resetSecurityKey | Private slot to reset the selected security key.
__setMinimumPinLength | Private slot to set the minimum PIN length.
__setPin | Private slot to set a PIN for the selected security key.
__showSecurityKeyInfo | Private slot to show some info about the selected security key.
__toggleAlwaysUv | Private slot to toggle the state of the 'Always Require User Verification' flag.
on_deleteButton_clicked | Private slot to delete the selected passkey.
on_editButton_clicked | Private slot to edit the selected passkey.
on_loadPasskeysButton_clicked | Private slot to (re-)populate the passkeys list.
on_lockButton_toggled | Private slot to handle the toggling of the device locked status.
on_passkeysList_itemSelectionChanged | Private slot handling the selection of a passkey.
on_pinButton_clicked | Private slot to set or change the PIN for the selected security key.
on_securityKeysComboBox_currentIndexChanged | Private slot handling the selection of security key.

### Static Methods

None

#### Fido2ManagementDialog (Constructor)

Fido2ManagementDialog(standalone=False, parent=None)

Constructor

standalone (bool (optional))
  flag indicating the standalone management application (defaults to False)
parent (QWidget (optional))
  reference to the parent widget (defaults to None)

#### Fido2ManagementDialog.__aboutToShowManagementMenu

__aboutToShowManagementMenu()

Private slot to prepare the security key management menu before it is shown.

#### Fido2ManagementDialog.__changePin

__changePin()

Private slot to change the PIN of the selected security key.

#### Fido2ManagementDialog.__checkPinStatus

__checkPinStatus(feature)

Private method to check the PIN status of the connected security key.

feature (str (optional))
  name of the feature requesting the PIN (defaults to None)

Return:
  flag indicating a positive status

Return Type:
  bool

#### Fido2ManagementDialog.__deviceConnected

__deviceConnected()

Private slot handling the device connected signal.

#### Fido2ManagementDialog.__deviceDisconnected

__deviceDisconnected()

Private slot handling the device disconnected signal.

#### Fido2ManagementDialog.__forcePinChange

__forcePinChange()

Private slot to force a PIN change before the next use.

#### Fido2ManagementDialog.__getRequiredPin

__getRequiredPin(feature=None)

Private method to check, if a pin has been set for the selected device, and ask the user to enter it.

feature (str (optional))
  name of the feature requesting the PIN (defaults to None)

Return:
  PIN of the selected security key or None in case of an issue

Return Type:
  str or None

#### Fido2ManagementDialog.__handleError

__handleError(error, title, message)

Private method to handle an error reported by the manager.

error (Exception)
  reference to the exception object
title (str)
  tirle of the message box
message (str)
  message to be shown

#### Fido2ManagementDialog.__initManagementMenu

__initManagementMenu()

Private method to initialize the security key management menu with actions not needed so much.

#### Fido2ManagementDialog.__populateDeviceSelector

__populateDeviceSelector()

Private slot to populate the device selector combo box.

#### Fido2ManagementDialog.__populatePasskeysList

__populatePasskeysList()

Private slot to populate the list of store passkeys of the selected security key.

#### Fido2ManagementDialog.__resetSecurityKey

__resetSecurityKey()

Private slot to reset the selected security key.

#### Fido2ManagementDialog.__setMinimumPinLength

__setMinimumPinLength()

Private slot to set the minimum PIN length.

#### Fido2ManagementDialog.__setPin

__setPin()

Private slot to set a PIN for the selected security key.

#### Fido2ManagementDialog.__showSecurityKeyInfo

__showSecurityKeyInfo()

Private slot to show some info about the selected security key.

#### Fido2ManagementDialog.__toggleAlwaysUv

__toggleAlwaysUv()

Private slot to toggle the state of the 'Always Require User Verification' flag.

#### Fido2ManagementDialog.on_deleteButton_clicked

on_deleteButton_clicked()

Private slot to delete the selected passkey.

#### Fido2ManagementDialog.on_editButton_clicked

on_editButton_clicked()

Private slot to edit the selected passkey.

#### Fido2ManagementDialog.on_loadPasskeysButton_clicked

on_loadPasskeysButton_clicked()

Private slot to (re-)populate the passkeys list.

#### Fido2ManagementDialog.on_lockButton_toggled

on_lockButton_toggled(checked)

Private slot to handle the toggling of the device locked status.

checked (bool)
  state of the lock/unlock button

#### Fido2ManagementDialog.on_passkeysList_itemSelectionChanged

on_passkeysList_itemSelectionChanged()

Private slot handling the selection of a passkey.

#### Fido2ManagementDialog.on_pinButton_clicked

on_pinButton_clicked()

Private slot to set or change the PIN for the selected security key.

#### Fido2ManagementDialog.on_securityKeysComboBox_currentIndexChanged

on_securityKeysComboBox_currentIndexChanged(index)

Private slot handling the selection of security key.

index (int)
  index of the selected security key

Up