1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-23 11:43:46 +00:00

[AC-1012] Hide link to 2FA policy for Teams orgs (#6154)

- Also cleanup eslint warnings
This commit is contained in:
Shane Melton
2023-09-07 08:06:22 -07:00
committed by GitHub
parent d172dfe2f6
commit 615248e04f
4 changed files with 48 additions and 21 deletions

View File

@@ -1,16 +1,25 @@
<div [ngClass]="tabbedHeader ? 'tabbed-header' : 'page-header'">
<h1 *ngIf="!organizationId">{{ "twoStepLogin" | i18n }}</h1>
<h1 *ngIf="organizationId">{{ "twoStepLoginEnforcement" | i18n }}</h1>
<h1 *ngIf="!organizationId || !isEnterpriseOrg">{{ "twoStepLogin" | i18n }}</h1>
<h1 *ngIf="organizationId && isEnterpriseOrg">{{ "twoStepLoginEnforcement" | i18n }}</h1>
</div>
<p *ngIf="!organizationId">{{ "twoStepLoginDesc" | i18n }}</p>
<ng-container *ngIf="organizationId">
<p>
{{ "twoStepLoginOrganizationDescStart" | i18n }}
<a routerLink="../policies">{{ "twoStepLoginPolicy" | i18n }}.</a>
<br />
{{ "twoStepLoginOrganizationDuoDesc" | i18n }}
<ng-container *ngIf="isEnterpriseOrg; else teamsDescription">
{{ "twoStepLoginEnterpriseDescStart" | i18n }}
<a routerLink="../policies">{{ "twoStepLoginPolicy" | i18n }}.</a>
<br />
{{ "twoStepLoginOrganizationDuoDesc" | i18n }}
<br />
<br />
<p>{{ "twoStepLoginOrganizationSsoDesc" | i18n }}</p>
</ng-container>
<ng-template #teamsDescription>
{{ "twoStepLoginTeamsDesc" | i18n }}
<br />
{{ "twoStepLoginOrganizationDuoDesc" | i18n }}
</ng-template>
</p>
<p>{{ "twoStepLoginOrganizationSsoDesc" | i18n }}</p>
</ng-container>
<bit-callout type="warning" *ngIf="!organizationId">
<p>{{ "twoStepLoginRecoveryWarning" | i18n }}</p>

View File

@@ -6,8 +6,10 @@ import { ModalService } from "@bitwarden/angular/services/modal.service";
import { ApiService } from "@bitwarden/common/abstractions/api.service";
import { PolicyService } from "@bitwarden/common/admin-console/abstractions/policy/policy.service.abstraction";
import { PolicyType } from "@bitwarden/common/admin-console/enums";
import { Organization } from "@bitwarden/common/admin-console/models/domain/organization";
import { TwoFactorProviderType } from "@bitwarden/common/auth/enums/two-factor-provider-type";
import { TwoFactorProviders } from "@bitwarden/common/auth/services/two-factor.service";
import { ProductType } from "@bitwarden/common/enums";
import { MessagingService } from "@bitwarden/common/platform/abstractions/messaging.service";
import { StateService } from "@bitwarden/common/platform/abstractions/state.service";
@@ -36,6 +38,7 @@ export class TwoFactorSetupComponent implements OnInit, OnDestroy {
webAuthnModalRef: ViewContainerRef;
organizationId: string;
organization: Organization;
providers: any[] = [];
canAccessPremium: boolean;
showPolicyWarning = false;
@@ -45,7 +48,7 @@ export class TwoFactorSetupComponent implements OnInit, OnDestroy {
tabbedHeader = true;
private destroy$ = new Subject<void>();
protected destroy$ = new Subject<void>();
private twoFactorAuthPolicyAppliesToActiveUser: boolean;
constructor(
@@ -202,11 +205,15 @@ export class TwoFactorSetupComponent implements OnInit, OnDestroy {
this.evaluatePolicies();
}
private async evaluatePolicies() {
private evaluatePolicies() {
if (this.organizationId == null && this.providers.filter((p) => p.enabled).length === 1) {
this.showPolicyWarning = this.twoFactorAuthPolicyAppliesToActiveUser;
} else {
this.showPolicyWarning = false;
}
}
get isEnterpriseOrg() {
return this.organization?.planProductType === ProductType.Enterprise;
}
}