mirror of https://github.com/vector-im/riot-web
Fix passphrase reset in key backup restore dialog
We prompt to restore the key backup when bootstrapping if it's not trusted, but the 'set up new recovery options' in this dialog just sets up a new key backup which just goes back to trying to access SSSS if cross-signing is enabled. This makes it reset the SSSS passphase instead. Fixes https://github.com/vector-im/riot-web/issues/13578pull/21833/head
parent
159547e6f8
commit
6486c74909
|
@ -23,6 +23,7 @@ import { MatrixClient } from 'matrix-js-sdk';
|
||||||
import Modal from '../../../../Modal';
|
import Modal from '../../../../Modal';
|
||||||
import { _t } from '../../../../languageHandler';
|
import { _t } from '../../../../languageHandler';
|
||||||
import { accessSecretStorage } from '../../../../CrossSigningManager';
|
import { accessSecretStorage } from '../../../../CrossSigningManager';
|
||||||
|
import SettingsStore from "../../../../settings/SettingsStore";
|
||||||
|
|
||||||
const RESTORE_TYPE_PASSPHRASE = 0;
|
const RESTORE_TYPE_PASSPHRASE = 0;
|
||||||
const RESTORE_TYPE_RECOVERYKEY = 1;
|
const RESTORE_TYPE_RECOVERYKEY = 1;
|
||||||
|
@ -89,6 +90,12 @@ export default class RestoreKeyBackupDialog extends React.PureComponent {
|
||||||
|
|
||||||
_onResetRecoveryClick = () => {
|
_onResetRecoveryClick = () => {
|
||||||
this.props.onFinished(false);
|
this.props.onFinished(false);
|
||||||
|
|
||||||
|
if (SettingsStore.getValue("feature_cross_signing")) {
|
||||||
|
// If cross-signing is enabled, we reset the SSSS recovery passphrase (and cross-signing keys)
|
||||||
|
this.props.onFinished(false);
|
||||||
|
accessSecretStorage(() => {}, /* forceReset = */ true);
|
||||||
|
} else {
|
||||||
Modal.createTrackedDialogAsync('Key Backup', 'Key Backup',
|
Modal.createTrackedDialogAsync('Key Backup', 'Key Backup',
|
||||||
import('../../../../async-components/views/dialogs/keybackup/CreateKeyBackupDialog'),
|
import('../../../../async-components/views/dialogs/keybackup/CreateKeyBackupDialog'),
|
||||||
{
|
{
|
||||||
|
@ -98,6 +105,7 @@ export default class RestoreKeyBackupDialog extends React.PureComponent {
|
||||||
}, null, /* priority = */ false, /* static = */ true,
|
}, null, /* priority = */ false, /* static = */ true,
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
_onRecoveryKeyChange = (e) => {
|
_onRecoveryKeyChange = (e) => {
|
||||||
this.setState({
|
this.setState({
|
||||||
|
|
Loading…
Reference in New Issue