2021-10-21 23:30:25 +02:00
|
|
|
<div class="modal fade" role="dialog" aria-modal="true" aria-labelledby="2faAuthenticatorTitle">
|
2019-10-11 17:47:41 +02:00
|
|
|
<div class="modal-dialog" role="document">
|
2018-06-27 15:20:09 +02:00
|
|
|
<div class="modal-content">
|
|
|
|
<div class="modal-header">
|
2019-10-11 17:47:41 +02:00
|
|
|
<h2 class="modal-title" id="2faAuthenticatorTitle">
|
2018-06-27 15:20:09 +02:00
|
|
|
{{ "twoStepLogin" | i18n }}
|
|
|
|
<small>{{ "authenticatorAppTitle" | i18n }}</small>
|
|
|
|
</h2>
|
2019-10-11 17:22:21 +02:00
|
|
|
<button
|
|
|
|
type="button"
|
|
|
|
class="close"
|
|
|
|
data-dismiss="modal"
|
|
|
|
appA11yTitle="{{ 'close' | i18n }}"
|
|
|
|
>
|
2018-06-27 15:20:09 +02:00
|
|
|
<span aria-hidden="true">×</span>
|
|
|
|
</button>
|
|
|
|
</div>
|
2019-02-21 22:50:37 +01:00
|
|
|
<app-two-factor-verify
|
|
|
|
[organizationId]="organizationId"
|
|
|
|
[type]="type"
|
|
|
|
(onAuthed)="auth($event)"
|
|
|
|
*ngIf="!authed"
|
|
|
|
>
|
2018-06-28 05:55:50 +02:00
|
|
|
</app-two-factor-verify>
|
2018-06-27 15:20:09 +02:00
|
|
|
<form
|
|
|
|
#form
|
|
|
|
(ngSubmit)="submit()"
|
|
|
|
[appApiAction]="formPromise"
|
|
|
|
ngNativeValidate
|
|
|
|
*ngIf="authed"
|
|
|
|
>
|
|
|
|
<div class="modal-body">
|
|
|
|
<ng-container *ngIf="!enabled">
|
2021-10-08 00:47:32 +02:00
|
|
|
<img class="float-right mfaType0" alt="Authenticator app logo" />
|
2018-06-27 15:20:09 +02:00
|
|
|
<p>{{ "twoStepAuthenticatorDesc" | i18n }}</p>
|
|
|
|
<p>
|
|
|
|
<strong>1. {{ "twoStepAuthenticatorDownloadApp" | i18n }}</strong>
|
|
|
|
</p>
|
|
|
|
</ng-container>
|
|
|
|
<ng-container *ngIf="enabled">
|
2022-01-27 18:25:58 +01:00
|
|
|
<app-callout type="success" title="{{ 'enabled' | i18n }}" icon="bwi bwi-check-circle">
|
2018-06-27 15:20:09 +02:00
|
|
|
<p>{{ "twoStepLoginProviderEnabled" | i18n }}</p>
|
|
|
|
{{ "twoStepAuthenticatorReaddDesc" | i18n }}
|
|
|
|
</app-callout>
|
2021-10-08 00:47:32 +02:00
|
|
|
<img class="float-right mfaType0" alt="Authenticator app logo" />
|
2018-06-27 15:20:09 +02:00
|
|
|
<p>{{ "twoStepAuthenticatorNeedApp" | i18n }}</p>
|
|
|
|
</ng-container>
|
2022-01-27 18:25:58 +01:00
|
|
|
<ul class="bwi-ul">
|
2018-06-27 15:20:09 +02:00
|
|
|
<li>
|
2022-01-27 18:25:58 +01:00
|
|
|
<i class="bwi bwi-li bwi-apple"></i>{{ "iosDevices" | i18n }}:
|
2019-02-21 22:50:37 +01:00
|
|
|
<a
|
|
|
|
href="https://itunes.apple.com/us/app/authy/id494168017?mt=8"
|
|
|
|
target="_blank"
|
|
|
|
rel="noopener"
|
|
|
|
>Authy</a
|
|
|
|
>
|
2018-06-27 15:20:09 +02:00
|
|
|
</li>
|
|
|
|
<li>
|
2022-01-27 18:25:58 +01:00
|
|
|
<i class="bwi bwi-li bwi-android"></i>{{ "androidDevices" | i18n }}:
|
2019-02-21 22:50:37 +01:00
|
|
|
<a
|
|
|
|
href="https://play.google.com/store/apps/details?id=com.authy.authy"
|
|
|
|
target="_blank"
|
|
|
|
rel="noopener"
|
|
|
|
>Authy</a
|
|
|
|
>
|
2018-06-27 15:20:09 +02:00
|
|
|
</li>
|
|
|
|
<li>
|
2022-01-27 18:25:58 +01:00
|
|
|
<i class="bwi bwi-li bwi-windows"></i>{{ "windowsDevices" | i18n }}:
|
2019-02-21 22:50:37 +01:00
|
|
|
<a
|
|
|
|
href="https://www.microsoft.com/p/authenticator/9wzdncrfj3rj"
|
|
|
|
target="_blank"
|
|
|
|
rel="noopener"
|
|
|
|
>Microsoft Authenticator</a
|
|
|
|
>
|
2018-06-27 15:20:09 +02:00
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
<p>{{ "twoStepAuthenticatorAppsRecommended" | i18n }}</p>
|
|
|
|
<p *ngIf="!enabled">
|
|
|
|
<strong>2. {{ "twoStepAuthenticatorScanCode" | i18n }}</strong>
|
|
|
|
</p>
|
|
|
|
<hr *ngIf="enabled" />
|
|
|
|
<p class="text-center" [ngClass]="{ 'mb-0': enabled }">
|
2018-07-14 05:15:09 +02:00
|
|
|
<canvas id="qr"></canvas><br />
|
2019-10-11 16:35:24 +02:00
|
|
|
<code appA11yTitle="{{ 'key' | i18n }}">{{ key }}</code>
|
2018-06-27 15:20:09 +02:00
|
|
|
</p>
|
|
|
|
<ng-container *ngIf="!enabled">
|
|
|
|
<label for="token">3. {{ "twoStepAuthenticatorEnterCode" | i18n }}</label>
|
2019-02-21 22:50:37 +01:00
|
|
|
<input
|
|
|
|
id="token"
|
|
|
|
type="text"
|
|
|
|
name="Token"
|
|
|
|
class="form-control"
|
|
|
|
[(ngModel)]="token"
|
2018-07-18 05:15:15 +02:00
|
|
|
required
|
2019-10-11 16:35:24 +02:00
|
|
|
appInputVerbatim
|
2021-12-17 15:57:11 +01:00
|
|
|
/>
|
2019-10-11 16:35:24 +02:00
|
|
|
</ng-container>
|
2018-06-27 15:20:09 +02:00
|
|
|
</div>
|
|
|
|
<div class="modal-footer">
|
2018-07-18 05:15:15 +02:00
|
|
|
<button type="submit" class="btn btn-primary btn-submit" [disabled]="form.loading">
|
2022-01-27 18:25:58 +01:00
|
|
|
<i
|
|
|
|
class="bwi bwi-spinner bwi-spin"
|
|
|
|
title="{{ 'loading' | i18n }}"
|
|
|
|
aria-hidden="true"
|
|
|
|
></i>
|
2018-06-27 23:50:31 +02:00
|
|
|
<span *ngIf="!enabled">{{ "enable" | i18n }}</span>
|
2018-06-27 15:20:09 +02:00
|
|
|
<span *ngIf="enabled">{{ "disable" | i18n }}</span>
|
|
|
|
</button>
|
2019-02-21 22:50:37 +01:00
|
|
|
<button type="button" class="btn btn-outline-secondary" data-dismiss="modal">
|
|
|
|
{{ "close" | i18n }}
|
2018-06-27 15:20:09 +02:00
|
|
|
</button>
|
2021-12-17 15:57:11 +01:00
|
|
|
</div>
|
|
|
|
</form>
|
2018-06-27 15:20:09 +02:00
|
|
|
</div>
|
2021-12-17 15:57:11 +01:00
|
|
|
</div>
|
2018-06-27 15:20:09 +02:00
|
|
|
</div>
|