mirror of
https://github.com/bitwarden/browser
synced 2026-02-12 22:44:11 +00:00
* [PM-10395] Add new item type ssh key (#10360) * Implement ssh-key cipher type * Fix linting * Fix edit and view components for ssh-keys on desktop * Fix tests * Remove ssh key type references * Remove add ssh key option * Fix typo * Add tests * [PM-10399] Add ssh key import export for bitwarden json (#10529) * Add ssh key import export for bitwarden json * Remove key type from ssh key export * [PM-10406] Add privatekey publickey and fingerprint to both add-edit and view co… (#11046) * Add privatekey publickey and fingerprint to both add-edit and view components * Remove wrong a11y title * Fix testid * [PM-10098] SSH Agent & SSH Key creation for Bitwarden Desktop (#10293) * Add ssh agent, generator & import * Move ssh agent code to bitwarden-russh crate * Remove generator component * Cleanup * Cleanup * Remove left over sshGenerator reference * Cleanup * Add documentation to sshkeyimportstatus * Fix outdated variable name * Update apps/desktop/src/platform/preload.ts Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com> * Rename renderersshagent * Rename MainSshAgentService * Improve clarity of 'id' variables being used * Improve clarity of 'id' variables being used * Update apps/desktop/src/vault/app/vault/add-edit.component.html Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com> * Fix outdated cipher/messageid names * Rename SSH to Ssh * Make agent syncing more reactive * Move constants to top of class * Make sshkey cipher filtering clearer * Add stricter equality check on ssh key unlock * Fix build and messages * Fix incorrect featureflag name * Replace anonymous async function with switchmap pipe * Fix build * Update apps/desktop/desktop_native/napi/src/lib.rs Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com> * Revert incorrectly renamed 'Ssh' usages to SSH * Run cargo fmt * Clean up ssh agent sock path logic * Cleanup and split to platform specific files * Small cleanup * Pull out generator and importer into core * Rename renderersshagentservice to sshagentservice * Rename cipheruuid to cipher_id * Drop ssh dependencies from napi crate * Clean up windows build * Small cleanup * Small cleanup * Cleanup * Add rxjs pipeline for agent services * [PM-12555] Pkcs8 sshkey import & general ssh key import tests (#11048) * Add pkcs8 import and tests * Add key type unsupported error * Remove unsupported formats * Remove code for unsupported formats * Fix encrypted pkcs8 import * Add ed25519 pkcs8 unencrypted test file * SSH agent rxjs tweaks (#11148) * feat: rewrite sshagent.signrequest as purely observable * feat: fail the request when unlock times out * chore: clean up, add some clarifying comments * chore: remove unused dependency * fix: result `undefined` crashing in NAPI -> Rust * Allow concurrent SSH requests in rust * Remove unwraps * Cleanup and add init service init call * Fix windows * Fix timeout behavior on locked vault --------- Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com> * Fix libc dependency being duplicated * fix SSH casing (#11840) * Move ssh agent behind feature flag (#11841) * Move ssh agent behind feature flag * Add separate flag for ssh agent * [PM-14215] fix unsupported key type error message (#11788) * Fix error message for import of unsupported ssh keys * Use triple equals in add-edit component for ssh keys --------- Co-authored-by: Andreas Coroiu <acoroiu@bitwarden.com> Co-authored-by: aj-bw <81774843+aj-bw@users.noreply.github.com>
60 lines
1.5 KiB
TypeScript
60 lines
1.5 KiB
TypeScript
import { DIALOG_DATA, DialogRef } from "@angular/cdk/dialog";
|
|
import { CommonModule } from "@angular/common";
|
|
import { Component, Inject } from "@angular/core";
|
|
import { FormBuilder, ReactiveFormsModule } from "@angular/forms";
|
|
|
|
import { JslibModule } from "@bitwarden/angular/jslib.module";
|
|
import {
|
|
AsyncActionsModule,
|
|
ButtonModule,
|
|
DialogModule,
|
|
FormFieldModule,
|
|
IconButtonModule,
|
|
} from "@bitwarden/components";
|
|
import { DialogService } from "@bitwarden/components/src/dialog";
|
|
import { CipherFormGeneratorComponent } from "@bitwarden/vault";
|
|
|
|
export interface ApproveSshRequestParams {
|
|
cipherName: string;
|
|
applicationName: string;
|
|
}
|
|
|
|
@Component({
|
|
selector: "app-approve-ssh-request",
|
|
templateUrl: "approve-ssh-request.html",
|
|
standalone: true,
|
|
imports: [
|
|
DialogModule,
|
|
CommonModule,
|
|
JslibModule,
|
|
CipherFormGeneratorComponent,
|
|
ButtonModule,
|
|
IconButtonModule,
|
|
ReactiveFormsModule,
|
|
AsyncActionsModule,
|
|
FormFieldModule,
|
|
],
|
|
})
|
|
export class ApproveSshRequestComponent {
|
|
approveSshRequestForm = this.formBuilder.group({});
|
|
|
|
constructor(
|
|
@Inject(DIALOG_DATA) protected params: ApproveSshRequestParams,
|
|
private dialogRef: DialogRef<boolean>,
|
|
private formBuilder: FormBuilder,
|
|
) {}
|
|
|
|
static open(dialogService: DialogService, cipherName: string, applicationName: string) {
|
|
return dialogService.open<boolean, ApproveSshRequestParams>(ApproveSshRequestComponent, {
|
|
data: {
|
|
cipherName,
|
|
applicationName,
|
|
},
|
|
});
|
|
}
|
|
|
|
submit = async () => {
|
|
this.dialogRef.close(true);
|
|
};
|
|
}
|