1
0
mirror of https://github.com/bitwarden/browser.git synced 2025-02-01 23:01:28 +01:00

wip: fix for exposed passwords

This commit is contained in:
Andreas Coroiu 2025-01-24 16:54:12 +01:00
parent d0f1e224a3
commit 23cbc06b1f
No known key found for this signature in database
GPG Key ID: E70B5FFC81DFEC1A
4 changed files with 48 additions and 34 deletions

View File

@ -5,12 +5,12 @@ import { CipherFormConfigService, DefaultCipherFormConfigService } from "@bitwar
import { LooseComponentsModule } from "../../../shared";
import { SharedModule } from "../../../shared/shared.module";
import { ReportsSharedModule } from "../../../tools/reports";
import { RoutedVaultFilterBridgeService } from "../../../vault/individual-vault/vault-filter/services/routed-vault-filter-bridge.service";
import { RoutedVaultFilterService } from "../../../vault/individual-vault/vault-filter/services/routed-vault-filter.service";
import { AdminConsoleCipherFormConfigService } from "../../../vault/org-vault/services/admin-console-cipher-form-config.service";
import { OrganizationReportingRoutingModule } from "./organization-reporting-routing.module";
import { ReportsHomeComponent } from "./reports-home.component";
import { AdminConsoleCipherFormConfigService } from "../../../vault/org-vault/services/admin-console-cipher-form-config.service";
import { RoutedVaultFilterService } from "../../../vault/individual-vault/vault-filter/services/routed-vault-filter.service";
import { RoutedVaultFilterBridgeService } from "../../../vault/individual-vault/vault-filter/services/routed-vault-filter-bridge.service";
@NgModule({
imports: [
@ -21,13 +21,13 @@ import { RoutedVaultFilterBridgeService } from "../../../vault/individual-vault/
],
declarations: [ReportsHomeComponent],
providers: [
{
provide: CipherFormConfigService,
useClass: AdminConsoleCipherFormConfigService,
},
AdminConsoleCipherFormConfigService,
RoutedVaultFilterService,
RoutedVaultFilterBridgeService,
// {
// provide: CipherFormConfigService,
// useClass: AdminConsoleCipherFormConfigService,
// },
// AdminConsoleCipherFormConfigService,
// RoutedVaultFilterService,
// RoutedVaultFilterBridgeService,
],
})
export class OrganizationReportingModule {}

View File

@ -20,11 +20,22 @@ import { PasswordRepromptService, CipherFormConfigService } from "@bitwarden/vau
// eslint-disable-next-line no-restricted-imports
import { ExposedPasswordsReportComponent as BaseExposedPasswordsReportComponent } from "../../../tools/reports/pages/exposed-passwords-report.component";
import { RoutedVaultFilterBridgeService } from "../../../vault/individual-vault/vault-filter/services/routed-vault-filter-bridge.service";
import { RoutedVaultFilterService } from "../../../vault/individual-vault/vault-filter/services/routed-vault-filter.service";
import { AdminConsoleCipherFormConfigService } from "../../../vault/org-vault/services/admin-console-cipher-form-config.service";
@Component({
selector: "app-org-exposed-passwords-report",
templateUrl: "../../../tools/reports/pages/exposed-passwords-report.component.html",
providers: [
{
provide: CipherFormConfigService,
useClass: AdminConsoleCipherFormConfigService,
},
AdminConsoleCipherFormConfigService,
RoutedVaultFilterService,
RoutedVaultFilterBridgeService,
],
})
// eslint-disable-next-line rxjs-angular/prefer-takeuntil
export class ExposedPasswordsReportComponent
@ -44,7 +55,7 @@ export class ExposedPasswordsReportComponent
i18nService: I18nService,
syncService: SyncService,
cipherFormService: CipherFormConfigService,
adminConsoleCipherFormConfigService: AdminConsoleCipherFormConfigService
adminConsoleCipherFormConfigService: AdminConsoleCipherFormConfigService,
) {
super(
cipherService,

View File

@ -13,7 +13,7 @@ import { CipherService } from "@bitwarden/common/vault/abstractions/cipher.servi
import { SyncService } from "@bitwarden/common/vault/abstractions/sync/sync.service.abstraction";
import { CipherRepromptType } from "@bitwarden/common/vault/enums/cipher-reprompt-type";
import { CipherView } from "@bitwarden/common/vault/models/view/cipher.view";
import { TableDataSource , DialogService } from "@bitwarden/components";
import { TableDataSource, DialogService } from "@bitwarden/components";
import {
CipherFormConfig,
CipherFormConfigService,
@ -59,7 +59,7 @@ export class CipherReportComponent implements OnDestroy {
protected i18nService: I18nService,
private syncService: SyncService,
private cipherFormConfigService: CipherFormConfigService,
private adminConsoleCipherFormConfigService: AdminConsoleCipherFormConfigService
private adminConsoleCipherFormConfigService: AdminConsoleCipherFormConfigService,
) {
this.organizations$ = this.accountService.activeAccount$.pipe(
switchMap((account) => this.organizationService.organizations$(account?.id)),
@ -146,26 +146,26 @@ export class CipherReportComponent implements OnDestroy {
if (!(await this.repromptCipher(cipher))) {
return;
}
console.error("here");
if(this.organization){
const adminCipherFormConfig = await this.adminConsoleCipherFormConfigService.buildConfig(
"edit",
cipher.id as CipherId,
cipher.type,
);
console.error("failed");
await this.openVaultItemDialog("view", adminCipherFormConfig);
} else {
const cipherFormConfig = await this.cipherFormConfigService.buildConfig(
"edit",
cipher.id as CipherId,
cipher.type,
);
await this.openVaultItemDialog("view", cipherFormConfig);
}
console.error("here");
if (this.organization) {
const adminCipherFormConfig = await this.adminConsoleCipherFormConfigService.buildConfig(
"edit",
cipher.id as CipherId,
cipher.type,
);
console.error("failed");
await this.openVaultItemDialog("view", adminCipherFormConfig);
} else {
const cipherFormConfig = await this.cipherFormConfigService.buildConfig(
"edit",
cipher.id as CipherId,
cipher.type,
);
await this.openVaultItemDialog("view", cipherFormConfig);
}
}
/**

View File

@ -11,9 +11,12 @@ import { CipherView } from "@bitwarden/common/vault/models/view/cipher.view";
import { DialogService } from "@bitwarden/components";
import { CipherFormConfigService, PasswordRepromptService } from "@bitwarden/vault";
import { CipherReportComponent } from "./cipher-report.component";
import { RoutedVaultFilterBridgeService } from "../../../vault/individual-vault/vault-filter/services/routed-vault-filter-bridge.service";
import { RoutedVaultFilterService } from "../../../vault/individual-vault/vault-filter/services/routed-vault-filter.service";
import { AdminConsoleCipherFormConfigService } from "../../../vault/org-vault/services/admin-console-cipher-form-config.service";
import { CipherReportComponent } from "./cipher-report.component";
type ReportResult = CipherView & { exposedXTimes: number };
@Component({
@ -33,7 +36,7 @@ export class ExposedPasswordsReportComponent extends CipherReportComponent imple
i18nService: I18nService,
syncService: SyncService,
cipherFormConfigService: CipherFormConfigService,
adminConsoleCipherFormConfigService: AdminConsoleCipherFormConfigService
adminConsoleCipherFormConfigService: AdminConsoleCipherFormConfigService,
) {
super(
cipherService,