diff --git a/apps/web/src/app/vault/individual-vault/vault-header/vault-header.component.html b/apps/web/src/app/vault/individual-vault/vault-header/vault-header.component.html
index af4eb182eec..d2f5cc38013 100644
--- a/apps/web/src/app/vault/individual-vault/vault-header/vault-header.component.html
+++ b/apps/web/src/app/vault/individual-vault/vault-header/vault-header.component.html
@@ -76,7 +76,7 @@
{
+ cipherMenuItems$ = combineLatest([
+ this.restrictedItemTypesService.restricted$,
+ toObservable(this.canCreateCipher),
+ toObservable(this.canCreateSshKey),
+ ]).pipe(
+ map(([restrictedTypes, canCreateCipher, canCreateSshKey]) => {
+ // If user cannot create ciphers at all, return empty array
+ if (!canCreateCipher) {
+ return [];
+ }
return CIPHER_MENU_ITEMS.filter((item) => {
- if (!this.canCreateSshKey() && item.type === CipherType.SshKey) {
+ if (!canCreateSshKey && item.type === CipherType.SshKey) {
return false;
}
return !restrictedTypes.some((restrictedType) => restrictedType.cipherType === item.type);