* Create MFA setup page and remove MFA setup from account settings modal * Add enforce MFA to system console and force redirect * Lockdown mfa required API routes, add localization, other changes * Minor fixes * Fix typo * Fix some unit tests * Fix more unit tests * Minor fix * Updating UI for MFA screen (#4670) * Updating UI for MFA screen * Updating styles for MFA page * Add the ability to switch between email/sso with MFA enabled * Added mfa change email * Minor UI updates for MFA enforcement * Fix unit test * Fix client unit test * Allow switching email to ldap and back when MFA is enabled * Fix unit test * Revert config.json
67 строки
2.2 KiB
JavaScript
67 строки
2.2 KiB
JavaScript
// Copyright (c) 2016 Mattermost, Inc. All Rights Reserved.
|
|
// See License.txt for license information.
|
|
|
|
import React from 'react';
|
|
import {FormattedMessage} from 'react-intl';
|
|
import {browserHistory, Link} from 'react-router/es6';
|
|
|
|
import logoImage from 'images/logo.png';
|
|
|
|
export default class MFAController extends React.Component {
|
|
componentDidMount() {
|
|
if (window.mm_license.MFA !== 'true' || window.mm_config.EnableMultifactorAuthentication !== 'true') {
|
|
browserHistory.push('/');
|
|
}
|
|
}
|
|
|
|
render() {
|
|
let backButton;
|
|
if (window.mm_config.EnforceMultifactorAuthentication !== 'true') {
|
|
backButton = (
|
|
<div className='signup-header'>
|
|
<Link to='/'>
|
|
<span className='fa fa-chevron-left'/>
|
|
<FormattedMessage
|
|
id='web.header.back'
|
|
/>
|
|
</Link>
|
|
</div>
|
|
);
|
|
}
|
|
|
|
return (
|
|
<div className='inner-wrap sticky'>
|
|
<div className='content'>
|
|
<div>
|
|
{backButton}
|
|
<div className='col-sm-12'>
|
|
<div className='signup-team__container'>
|
|
<h3>
|
|
<FormattedMessage
|
|
id='mfa.setupTitle'
|
|
defaultMessage='Multi-factor Authentication Setup'
|
|
/>
|
|
</h3>
|
|
<img
|
|
className='signup-team-logo'
|
|
src={logoImage}
|
|
/>
|
|
<div id='mfa'>
|
|
{React.cloneElement(this.props.children, {})}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
);
|
|
}
|
|
}
|
|
|
|
MFAController.defaultProps = {
|
|
};
|
|
MFAController.propTypes = {
|
|
location: React.PropTypes.object.isRequired,
|
|
children: React.PropTypes.node
|
|
};
|