1
0
mirror of https://github.com/bitwarden/mobile synced 2026-02-24 00:23:08 +00:00

Compare commits

...

21 Commits

Author SHA1 Message Date
Federico Maccaroni
f24b13502f PR labeler test to see how labels behave on App 2023-05-05 18:29:06 +02:00
Federico Maccaroni
c1673a1bbf PM-1352 Fix avatar toolbar item not loading on OTP cipher selection (#2507) 2023-05-05 18:18:07 +02:00
github-actions[bot]
7b44395e1a Autosync the updated translations (#2506)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-05-05 10:10:37 +02:00
Álison Fernandes
0f3529aab8 Added src/App to PR Labeler (#2504) 2023-05-04 15:23:19 -07:00
Álison Fernandes
a72779997c Adding a Pull Request Labeler workflow (#2503)
* Added a Pull Request Labeler workflow

This workflow will add labels based on the PR file path changes

* Update .github/workflows/pr-labeler.yml

Co-authored-by: Joseph Flinn <58369717+joseph-flinn@users.noreply.github.com>

---------

Co-authored-by: Joseph Flinn <58369717+joseph-flinn@users.noreply.github.com>
2023-05-04 22:48:38 +01:00
Rico Acosta
49da536c7a Update config.yml (#2373)
Moving Customer Support to top as requested by Aaron Marshall
2023-05-04 21:22:31 +01:00
github-actions[bot]
c985c0a62b Autosync the updated translations (#2502)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-05-03 21:02:39 +02:00
mp-bw
0f417b8434 [PM-1817] Expand biometric integrity checks to the account level (#2498)
* Change bio integrity validation to work at account-level

* biometric state migration

* fix account bio valid key storage location during migration

* comment clarification

* fix for iOS extensions not using custom avatar color
2023-05-01 09:47:00 -04:00
github-actions[bot]
4f0238122b Autosync the updated translations (#2499)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-04-28 07:53:49 +02:00
github-actions[bot]
52ff634f00 Bumped version to 2023.4.1 (#2497)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-04-27 15:13:50 +02:00
github-actions[bot]
e820537fce Bumped version to 2023.4.0 (#2496)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-04-26 13:47:53 +02:00
André Bispo
7130d8a18c [PM-1946] remove ApprovePasswordlessLogins value on logout (#2494) 2023-04-25 09:41:35 -04:00
Jake Fink
659d34dfc2 [PM-1906] check value of KeyValuePair for null instead of object (#2489) 2023-04-21 11:24:33 -04:00
github-actions[bot]
6a5c999628 Autosync the updated translations (#2486)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-04-21 11:59:46 +02:00
Opeyemi
3bcb44ea71 changing CI-only SP KV job names (#2484) 2023-04-18 11:48:05 +01:00
Shane Melton
b108b4e71d [AC-1070] Enforce master password policy on login/unlock (#2410)
* [AC-1070] Add EnforceOnLogin property to MasterPasswordPolicyOptions

* [AC-1070] Add MasterPasswordPolicy property to Identity responses

* [AC-1070] Add policy service dependency to auth service

* [AC-1070] Introduce logic to evaluate master password after successful login

* [AC-1070] Add optional ForcePasswordResetReason to profile / state service

* [AC-1070] Save ForcePasswordResetReason to state when a weak master password is found during login

- Additionally, save the AdminForcePasswordReset reason if the identity result indicates an admin password reset is in effect.

* [AC-1070] Check for a saved ForcePasswordReset reason on TabsPage load force show the update password page

* [AC-1070] Make InitAsync virtual

Allow the UpdateTempPasswordPage to override the InitAsync method to check for a reset password reason in the state service

* [AC-1070] Modify UpdateTempPassword page appearance

- Load the force password reset reason from the state service
- Make warning text dynamic based on force password reason
- Conditionally show the Current master password field if updating a weak master password

* [AC-1070] Add update password method to Api service

* [AC-1070] Introduce logic to update both temp and regular passwords

- Check the Reason to use the appropriate request/endpoint when submitting.
- Verify the users current password locally using the user verification service.

* [AC-1070] Introduce VerifyMasterPasswordResponse

* [AC-1070] Add logic to evaluate master password on unlock

* [AC-1070] Add support 2FA login flow

Keep track of the reset password reason after a password login requires 2FA. During 2FA submission, check if there is a saved reason, and if so, force the user to update their password.

* [AC-1070] Formatting

* [AC-1070] Remove string key from service resolution

* [AC-1070] Change master password options to method variable to avoid class field

Add null check for password strength result and log an error as this is an unexpected flow

* [AC-1070] Remove usage of i18nService

* [AC-1070] Use AsyncCommand for SubmitCommand

* [AC-1070] Remove type from ShowToast call

* [AC-1070] Simplify UpdatePassword methods to accept string for the new encryption key

* [AC-1070] Use full text for key for the CurrentMasterPassword resource

* [AC-1070] Convert Reason to a private class field

* [AC-1070] Formatting changes

* [AC-1070] Simplify if statements in master password options policy service method

* [AC-1070] Use the saved force password reset reason after 2FA login

* [AC-1070] Use constant for ForceUpdatePassword message command

* [AC-1070] Move shared RequirePasswordChangeOnLogin method into PolicyService

* Revert "[AC-1070] Move shared RequirePasswordChangeOnLogin method into PolicyService"

This reverts commit e4feac130f.

* [AC-1070] Add check for null password strength response

* [AC-1070] Fix broken show password icon

* [AC-1070] Add show password icon for current master password
2023-04-17 07:35:50 -07:00
Jake Fink
a72f267558 [AC-1045] vault timeout action policy (#2415)
* [EC-1045] lock action if policy and show message

* [EC-1045] add text for policy message

* [EC-1045] add consts to policy service

* [EC-1045] missed a const

* [AC-1045] fix build

* [AC-1045] fix bug where UI wasn't updating after sync

* [AC-1045] change FirstOrDefault to First to avoid nulls

* [AC-1045] refactor get vault timeout functions

* [AC-1045] don't filter action options unecessarily

* [AC-1045] refactor build alert logic for readability

* [AC-1045] use policy to filter timeout options instead of current timeout

* [AC-1045] update timeout during sync instead of getter
- remove encrypted from state since it's not encrypted
- if policies return a timeout policy, check and update vault timeout

* [AC-1045] default to custom if we can't find vault timeout option

* [AC-1045] revert Encrypted Policies rename
2023-04-14 15:39:57 -04:00
github-actions[bot]
cc75cebdb8 Autosync the updated translations (#2476)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-04-14 20:35:29 +02:00
Daniel James Smith
3a0510d6b4 [PS-2507] Enable firefox relay address on creation (#2474)
* Enable firefox relay address on creation

Adding a body (json) to the request and setting enabled to true.
Additionally the description is set to "Generated by Bitwarden." to mimick the behaviour of the other clients

* Add missing encoding and mediaType

* Replace JObject with anonymous type
2023-04-14 19:20:35 +02:00
aj-rosado
0c4b88e562 PM-1731 - Changed UIDocumentInteractionController with UIDocumentPickerViewController (#2472) 2023-04-13 19:51:56 +01:00
Michał Chęciński
ac3b0c2bad [DEVOPS-1261] Update workflows to use new CI only keyvault (#2462)
* Fixed warning in version-bump

* Use new CI Azure Key Vault

* Fix name
2023-04-11 17:18:59 +02:00
127 changed files with 8192 additions and 949 deletions

View File

@@ -1,5 +1,8 @@
blank_issues_enabled: false blank_issues_enabled: false
contact_links: contact_links:
- name: Customer Support
url: https://bitwarden.com/contact/
about: Please contact our customer support for account issues and general customer support.
- name: Report mobile autofill failure - name: Report mobile autofill failure
url: https://docs.google.com/forms/d/e/1FAIpQLScMopHyN7KGJs8hW562VTzbIGL4KcFnx0wJcsW0GYE1BnPiGA/viewform url: https://docs.google.com/forms/d/e/1FAIpQLScMopHyN7KGJs8hW562VTzbIGL4KcFnx0wJcsW0GYE1BnPiGA/viewform
about: We are aware of some situations where the Bitwarden mobile app will not autofill information correctly. This is something the Bitwarden team is actively working on but need your help as a community and active Bitwarden users! about: We are aware of some situations where the Bitwarden mobile app will not autofill information correctly. This is something the Bitwarden team is actively working on but need your help as a community and active Bitwarden users!
@@ -9,9 +12,6 @@ contact_links:
- name: Bitwarden Community Forums - name: Bitwarden Community Forums
url: https://community.bitwarden.com url: https://community.bitwarden.com
about: Please visit the community forums for general community discussion, support and the development roadmap. about: Please visit the community forums for general community discussion, support and the development roadmap.
- name: Customer Support
url: https://bitwarden.com/contact/
about: Please contact our customer support for account issues and general customer support.
- name: Security Issues - name: Security Issues
url: https://hackerone.com/bitwarden url: https://hackerone.com/bitwarden
about: We use HackerOne to manage security disclosures. about: We use HackerOne to manage security disclosures.

19
.github/labeler.yml vendored Normal file
View File

@@ -0,0 +1,19 @@
android:
- src/App/*
- src/Core/*
- src/Android/*
iOS:
- src/App/*
- src/Core/*
- lib/ios/*
- src/iOS/*
- src/iOS.Autofill/*
- src/iOS.Core/*
- src/iOS.Extension/*
- src/iOS.ShareExtension/*
- src/iOS.Widget/*
- src/watchOS/*
watchOS:
- src/watchOS/*

View File

@@ -191,7 +191,7 @@ jobs:
$androidPath = $($env:GITHUB_WORKSPACE + "/src/Android/Android.csproj"); $androidPath = $($env:GITHUB_WORKSPACE + "/src/Android/Android.csproj");
$packageName = "com.x8bit.bitwarden"; $packageName = "com.x8bit.bitwarden";
if ("${{ matrix.variant }}" -ne "prod") if ("${{ matrix.variant }}" -ne "prod")
{ {
$packageName = "com.x8bit.bitwarden.${{ matrix.variant }}"; $packageName = "com.x8bit.bitwarden.${{ matrix.variant }}";
} }
@@ -519,15 +519,15 @@ jobs:
with: with:
submodules: 'true' submodules: 'true'
- name: Login to Azure - Prod Subscription - name: Login to Azure - CI Subscription
uses: Azure/login@1f63701bf3e6892515f1b7ce2d2bf1708b46beaf uses: Azure/login@1f63701bf3e6892515f1b7ce2d2bf1708b46beaf
with: with:
creds: ${{ secrets.AZURE_PROD_KV_CREDENTIALS }} creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }}
- name: Retrieve secrets - name: Retrieve secrets
id: retrieve-secrets id: retrieve-secrets
env: env:
KEYVAULT: bitwarden-prod-kv KEYVAULT: bitwarden-ci
SECRETS: | SECRETS: |
appcenter-ios-token appcenter-ios-token
run: | run: |
@@ -773,15 +773,15 @@ jobs:
- name: Checkout repo - name: Checkout repo
uses: actions/checkout@a12a3943b4bdde767164f792f33f40b04645d846 uses: actions/checkout@a12a3943b4bdde767164f792f33f40b04645d846
- name: Login to Azure - name: Login to Azure - CI Subscription
uses: Azure/login@1f63701bf3e6892515f1b7ce2d2bf1708b46beaf uses: Azure/login@1f63701bf3e6892515f1b7ce2d2bf1708b46beaf
with: with:
creds: ${{ secrets.AZURE_PROD_KV_CREDENTIALS }} creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }}
- name: Retrieve secrets - name: Retrieve secrets
id: retrieve-secrets id: retrieve-secrets
env: env:
KEYVAULT: bitwarden-prod-kv KEYVAULT: bitwarden-ci
SECRETS: | SECRETS: |
crowdin-api-token crowdin-api-token
run: | run: |
@@ -839,17 +839,17 @@ jobs:
exit 1 exit 1
fi fi
- name: Login to Azure - Prod Subscription - name: Login to Azure - CI Subscription
uses: Azure/login@1f63701bf3e6892515f1b7ce2d2bf1708b46beaf uses: Azure/login@1f63701bf3e6892515f1b7ce2d2bf1708b46beaf
if: failure() if: failure()
with: with:
creds: ${{ secrets.AZURE_PROD_KV_CREDENTIALS }} creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }}
- name: Retrieve secrets - name: Retrieve secrets
id: retrieve-secrets id: retrieve-secrets
if: failure() if: failure()
env: env:
KEYVAULT: bitwarden-prod-kv KEYVAULT: bitwarden-ci
SECRETS: | SECRETS: |
devops-alerts-slack-webhook-url devops-alerts-slack-webhook-url
run: | run: |

View File

@@ -17,16 +17,16 @@ jobs:
- name: Checkout repo - name: Checkout repo
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4 uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f # v2.3.4
- name: Login to Azure - name: Login to Azure - CI Subscription
uses: Azure/login@77f1b2e3fb80c0e8645114159d17008b8a2e475a uses: Azure/login@77f1b2e3fb80c0e8645114159d17008b8a2e475a
with: with:
creds: ${{ secrets.AZURE_PROD_KV_CREDENTIALS }} creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }}
- name: Retrieve secrets - name: Retrieve secrets
id: retrieve-secrets id: retrieve-secrets
uses: bitwarden/gh-actions/get-keyvault-secrets@c3b3285993151c5af47cefcb3b9134c28ab479af uses: bitwarden/gh-actions/get-keyvault-secrets@c3b3285993151c5af47cefcb3b9134c28ab479af
with: with:
keyvault: "bitwarden-prod-kv" keyvault: "bitwarden-ci"
secrets: "crowdin-api-token, github-gpg-private-key, github-gpg-private-key-passphrase" secrets: "crowdin-api-token, github-gpg-private-key, github-gpg-private-key-passphrase"
- name: Download translations - name: Download translations
@@ -48,4 +48,4 @@ jobs:
pull_request_title: "Autosync Crowdin Translations" pull_request_title: "Autosync Crowdin Translations"
pull_request_body: "Autosync the updated translations" pull_request_body: "Autosync the updated translations"
gpg_private_key: ${{ steps.retrieve-secrets.outputs.github-gpg-private-key }} gpg_private_key: ${{ steps.retrieve-secrets.outputs.github-gpg-private-key }}
gpg_passphrase: ${{ steps.retrieve-secrets.outputs.github-gpg-private-key-passphrase }} gpg_passphrase: ${{ steps.retrieve-secrets.outputs.github-gpg-private-key-passphrase }}

17
.github/workflows/pr-labeler.yml vendored Normal file
View File

@@ -0,0 +1,17 @@
---
name: "Pull Request Labeler"
on:
pull_request_target: {}
jobs:
labeler:
name: "Pull Request Labeler"
permissions:
contents: read
pull-requests: write
runs-on: ubuntu-20.04
steps:
- uses: actions/labeler@ba790c862c380240c6d5e7427be5ace9a05c754b # v4.0.3
with:
sync-labels: true

View File

@@ -40,6 +40,6 @@ jobs:
- name: Bump version to ${{ needs.setup.outputs.version_number }} - name: Bump version to ${{ needs.setup.outputs.version_number }}
uses: ./.github/workflows/version-bump.yml uses: ./.github/workflows/version-bump.yml
secrets: secrets:
AZURE_PROD_KV_CREDENTIALS: ${{ secrets.AZURE_PROD_KV_CREDENTIALS }} AZURE_PROD_KV_CREDENTIALS: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }}
with: with:
version_number: ${{ needs.setup.outputs.version_number }} version_number: ${{ needs.setup.outputs.version_number }}

View File

@@ -11,6 +11,7 @@ on:
inputs: inputs:
version_number: version_number:
required: true required: true
type: string
secrets: secrets:
AZURE_PROD_KV_CREDENTIALS: AZURE_PROD_KV_CREDENTIALS:
required: true required: true
@@ -23,16 +24,16 @@ jobs:
- name: Checkout Branch - name: Checkout Branch
uses: actions/checkout@ec3a7ce113134d7a93b817d10a8272cb61118579 uses: actions/checkout@ec3a7ce113134d7a93b817d10a8272cb61118579
- name: Login to Azure - Prod Subscription - name: Login to Azure - CI Subscription
uses: Azure/login@1f63701bf3e6892515f1b7ce2d2bf1708b46beaf uses: Azure/login@1f63701bf3e6892515f1b7ce2d2bf1708b46beaf
with: with:
creds: ${{ secrets.AZURE_PROD_KV_CREDENTIALS }} creds: ${{ secrets.AZURE_KV_CI_SERVICE_PRINCIPAL }}
- name: Retrieve secrets - name: Retrieve secrets
id: retrieve-secrets id: retrieve-secrets
uses: bitwarden/gh-actions/get-keyvault-secrets@c3b3285993151c5af47cefcb3b9134c28ab479af uses: bitwarden/gh-actions/get-keyvault-secrets@c3b3285993151c5af47cefcb3b9134c28ab479af
with: with:
keyvault: "bitwarden-prod-kv" keyvault: "bitwarden-ci"
secrets: "github-gpg-private-key, github-gpg-private-key-passphrase" secrets: "github-gpg-private-key, github-gpg-private-key-passphrase"
- name: Import GPG key - name: Import GPG key

View File

@@ -21,6 +21,7 @@ using Bit.App.Utilities;
using Bit.App.Pages; using Bit.App.Pages;
using Bit.App.Utilities.AccountManagement; using Bit.App.Utilities.AccountManagement;
using Bit.App.Controls; using Bit.App.Controls;
using Bit.Core.Enums;
#if !FDROID #if !FDROID
using Android.Gms.Security; using Android.Gms.Security;
#endif #endif
@@ -147,7 +148,7 @@ namespace Bit.Droid
var storageMediatorService = new StorageMediatorService(mobileStorageService, secureStorageService, preferencesStorage); var storageMediatorService = new StorageMediatorService(mobileStorageService, secureStorageService, preferencesStorage);
var stateService = new StateService(mobileStorageService, secureStorageService, storageMediatorService, messagingService); var stateService = new StateService(mobileStorageService, secureStorageService, storageMediatorService, messagingService);
var stateMigrationService = var stateMigrationService =
new StateMigrationService(liteDbStorage, preferencesStorage, secureStorageService); new StateMigrationService(DeviceType.Android, liteDbStorage, preferencesStorage, secureStorageService);
var clipboardService = new ClipboardService(stateService); var clipboardService = new ClipboardService(stateService);
var deviceActionService = new DeviceActionService(stateService, messagingService); var deviceActionService = new DeviceActionService(stateService, messagingService);
var fileService = new FileService(stateService, broadcasterService); var fileService = new FileService(stateService, broadcasterService);
@@ -155,7 +156,7 @@ namespace Bit.Droid
messagingService, broadcasterService); messagingService, broadcasterService);
var autofillHandler = new AutofillHandler(stateService, messagingService, clipboardService, var autofillHandler = new AutofillHandler(stateService, messagingService, clipboardService,
platformUtilsService, new LazyResolve<IEventService>()); platformUtilsService, new LazyResolve<IEventService>());
var biometricService = new BiometricService(); var biometricService = new BiometricService(stateService);
var cryptoFunctionService = new PclCryptoFunctionService(cryptoPrimitiveService); var cryptoFunctionService = new PclCryptoFunctionService(cryptoPrimitiveService);
var cryptoService = new CryptoService(stateService, cryptoFunctionService); var cryptoService = new CryptoService(stateService, cryptoFunctionService);
var passwordRepromptService = new MobilePasswordRepromptService(platformUtilsService, cryptoService); var passwordRepromptService = new MobilePasswordRepromptService(platformUtilsService, cryptoService);

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:versionCode="1" android:versionName="2023.3.3" android:installLocation="internalOnly" package="com.x8bit.bitwarden"> <manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:versionCode="1" android:versionName="2023.4.1" android:installLocation="internalOnly" package="com.x8bit.bitwarden">
<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="33" /> <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="33" />
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.NFC" /> <uses-permission android:name="android.permission.NFC" />

View File

@@ -4,7 +4,6 @@ using Android.OS;
using Android.Security.Keystore; using Android.Security.Keystore;
using Bit.Core.Abstractions; using Bit.Core.Abstractions;
using Bit.Core.Services; using Bit.Core.Services;
using Bit.Core.Utilities;
using Java.Security; using Java.Security;
using Javax.Crypto; using Javax.Crypto;
@@ -12,6 +11,8 @@ namespace Bit.Droid.Services
{ {
public class BiometricService : IBiometricService public class BiometricService : IBiometricService
{ {
private readonly IStateService _stateService;
private const string KeyName = "com.8bit.bitwarden.biometric_integrity"; private const string KeyName = "com.8bit.bitwarden.biometric_integrity";
private const string KeyStoreName = "AndroidKeyStore"; private const string KeyStoreName = "AndroidKeyStore";
@@ -23,28 +24,28 @@ namespace Bit.Droid.Services
private readonly KeyStore _keystore; private readonly KeyStore _keystore;
public BiometricService() public BiometricService(IStateService stateService)
{ {
_stateService = stateService;
_keystore = KeyStore.GetInstance(KeyStoreName); _keystore = KeyStore.GetInstance(KeyStoreName);
_keystore.Load(null); _keystore.Load(null);
} }
public Task<bool> SetupBiometricAsync(string bioIntegrityKey = null) public async Task<bool> SetupBiometricAsync(string bioIntegritySrcKey = null)
{ {
// bioIntegrityKey used in iOS only
if (Build.VERSION.SdkInt >= BuildVersionCodes.M) if (Build.VERSION.SdkInt >= BuildVersionCodes.M)
{ {
CreateKey(); await CreateKeyAsync(bioIntegritySrcKey);
} }
return Task.FromResult(true); return true;
} }
public Task<bool> ValidateIntegrityAsync(string bioIntegrityKey = null) public async Task<bool> IsSystemBiometricIntegrityValidAsync(string bioIntegritySrcKey = null)
{ {
if (Build.VERSION.SdkInt < BuildVersionCodes.M) if (Build.VERSION.SdkInt < BuildVersionCodes.M)
{ {
return Task.FromResult(true); return true;
} }
try try
@@ -55,7 +56,7 @@ namespace Bit.Droid.Services
if (key == null || cipher == null) if (key == null || cipher == null)
{ {
return Task.FromResult(true); return true;
} }
cipher.Init(CipherMode.EncryptMode, key); cipher.Init(CipherMode.EncryptMode, key);
@@ -63,25 +64,32 @@ namespace Bit.Droid.Services
catch (KeyPermanentlyInvalidatedException e) catch (KeyPermanentlyInvalidatedException e)
{ {
// Biometric has changed // Biometric has changed
return Task.FromResult(false); await ClearStateAsync(bioIntegritySrcKey);
return false;
} }
catch (UnrecoverableKeyException e) catch (UnrecoverableKeyException e)
{ {
// Biometric was disabled and re-enabled // Biometric was disabled and re-enabled
return Task.FromResult(false); await ClearStateAsync(bioIntegritySrcKey);
return false;
} }
catch (InvalidKeyException e) catch (InvalidKeyException e)
{ {
// Fallback for old bitwarden users without a key // Fallback for old bitwarden users without a key
LoggerHelper.LogEvenIfCantBeResolved(e); LoggerHelper.LogEvenIfCantBeResolved(e);
CreateKey(); await CreateKeyAsync(bioIntegritySrcKey);
} }
return Task.FromResult(true); return true;
} }
private void CreateKey() private async Task CreateKeyAsync(string bioIntegritySrcKey = null)
{ {
bioIntegritySrcKey ??= Core.Constants.BiometricIntegritySourceKey;
await _stateService.SetSystemBiometricIntegrityState(bioIntegritySrcKey,
await GetStateAsync(bioIntegritySrcKey));
await _stateService.SetAccountBiometricIntegrityValidAsync(bioIntegritySrcKey);
try try
{ {
var keyGen = KeyGenerator.GetInstance(KeyAlgorithm, KeyStoreName); var keyGen = KeyGenerator.GetInstance(KeyAlgorithm, KeyStoreName);
@@ -101,5 +109,16 @@ namespace Bit.Droid.Services
LoggerHelper.LogEvenIfCantBeResolved(e); LoggerHelper.LogEvenIfCantBeResolved(e);
} }
} }
private async Task<string> GetStateAsync(string bioIntegritySrcKey)
{
return await _stateService.GetSystemBiometricIntegrityState(bioIntegritySrcKey) ??
Guid.NewGuid().ToString();
}
private async Task ClearStateAsync(string bioIntegritySrcKey)
{
await _stateService.SetSystemBiometricIntegrityState(bioIntegritySrcKey, null);
}
} }
} }

View File

@@ -18,6 +18,12 @@ using Bit.Core.Utilities;
using Xamarin.Forms; using Xamarin.Forms;
using Xamarin.Forms.Xaml; using Xamarin.Forms.Xaml;
[assembly: XamlCompilation(XamlCompilationOptions.Compile)] [assembly: XamlCompilation(XamlCompilationOptions.Compile)]
namespace Bit.App namespace Bit.App
{ {
@@ -161,6 +167,14 @@ namespace Bit.App
new NavigationPage(new RemoveMasterPasswordPage())); new NavigationPage(new RemoveMasterPasswordPage()));
}); });
} }
else if (message.Command == Constants.ForceUpdatePassword)
{
Device.BeginInvokeOnMainThread(async () =>
{
await Application.Current.MainPage.Navigation.PushModalAsync(
new NavigationPage(new UpdateTempPasswordPage()));
});
}
else if (message.Command == Constants.PasswordlessLoginRequestKey else if (message.Command == Constants.PasswordlessLoginRequestKey
|| message.Command == "unlocked" || message.Command == "unlocked"
|| message.Command == AccountsManagerMessageCommands.ACCOUNT_SWITCH_COMPLETED) || message.Command == AccountsManagerMessageCommands.ACCOUNT_SWITCH_COMPLETED)

View File

@@ -1,10 +1,7 @@
using System.Collections.Generic; using System.Text;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks; using System.Threading.Tasks;
using Bit.App.Abstractions; using Bit.App.Abstractions;
using Bit.App.Resources; using Bit.App.Resources;
using Bit.App.Utilities;
using Bit.Core; using Bit.Core;
using Bit.Core.Abstractions; using Bit.Core.Abstractions;
using Bit.Core.Models.Domain; using Bit.Core.Models.Domain;
@@ -73,13 +70,13 @@ namespace Bit.App.Pages
set => SetProperty(ref _policy, value); set => SetProperty(ref _policy, value);
} }
public string ShowPasswordIcon => ShowPassword ? "" : ""; public string ShowPasswordIcon => ShowPassword ? BitwardenIcons.EyeSlash : BitwardenIcons.Eye;
public string PasswordVisibilityAccessibilityText => ShowPassword ? AppResources.PasswordIsVisibleTapToHide : AppResources.PasswordIsNotVisibleTapToShow; public string PasswordVisibilityAccessibilityText => ShowPassword ? AppResources.PasswordIsVisibleTapToHide : AppResources.PasswordIsNotVisibleTapToShow;
public string MasterPassword { get; set; } public string MasterPassword { get; set; }
public string ConfirmMasterPassword { get; set; } public string ConfirmMasterPassword { get; set; }
public string Hint { get; set; } public string Hint { get; set; }
public async Task InitAsync(bool forceSync = false) public virtual async Task InitAsync(bool forceSync = false)
{ {
if (forceSync) if (forceSync)
{ {

View File

@@ -137,7 +137,7 @@
</StackLayout> </StackLayout>
<StackLayout Padding="10, 0"> <StackLayout Padding="10, 0">
<Label <Label
Text="{u:I18n BiometricInvalidated}" Text="{u:I18n AccountBiometricInvalidated}"
StyleClass="box-footer-label,text-danger,text-bold" StyleClass="box-footer-label,text-danger,text-bold"
IsVisible="{Binding BiometricIntegrityValid, Converter={StaticResource inverseBool}}" /> IsVisible="{Binding BiometricIntegrityValid, Converter={StaticResource inverseBool}}" />
<Button Text="{Binding BiometricButtonText}" Clicked="Biometric_Clicked" <Button Text="{Binding BiometricButtonText}" Clicked="Biometric_Clicked"

View File

@@ -31,6 +31,8 @@ namespace Bit.App.Pages
private readonly ILogger _logger; private readonly ILogger _logger;
private readonly IWatchDeviceService _watchDeviceService; private readonly IWatchDeviceService _watchDeviceService;
private readonly WeakEventManager<int?> _secretEntryFocusWeakEventManager = new WeakEventManager<int?>(); private readonly WeakEventManager<int?> _secretEntryFocusWeakEventManager = new WeakEventManager<int?>();
private readonly IPolicyService _policyService;
private readonly IPasswordGenerationService _passwordGenerationService;
private string _email; private string _email;
private string _masterPassword; private string _masterPassword;
@@ -61,6 +63,8 @@ namespace Bit.App.Pages
_keyConnectorService = ServiceContainer.Resolve<IKeyConnectorService>("keyConnectorService"); _keyConnectorService = ServiceContainer.Resolve<IKeyConnectorService>("keyConnectorService");
_logger = ServiceContainer.Resolve<ILogger>("logger"); _logger = ServiceContainer.Resolve<ILogger>("logger");
_watchDeviceService = ServiceContainer.Resolve<IWatchDeviceService>(); _watchDeviceService = ServiceContainer.Resolve<IWatchDeviceService>();
_policyService = ServiceContainer.Resolve<IPolicyService>();
_passwordGenerationService = ServiceContainer.Resolve<IPasswordGenerationService>();
PageTitle = AppResources.VerifyMasterPassword; PageTitle = AppResources.VerifyMasterPassword;
TogglePasswordCommand = new Command(TogglePassword); TogglePasswordCommand = new Command(TogglePassword);
@@ -205,7 +209,7 @@ namespace Bit.App.Pages
if (BiometricLock) if (BiometricLock)
{ {
BiometricIntegrityValid = await _biometricService.ValidateIntegrityAsync(); BiometricIntegrityValid = await _platformUtilsService.IsBiometricIntegrityValidAsync();
if (!_biometricIntegrityValid) if (!_biometricIntegrityValid)
{ {
BiometricButtonVisible = false; BiometricButtonVisible = false;
@@ -294,6 +298,7 @@ namespace Bit.App.Pages
var key = await _cryptoService.MakeKeyAsync(MasterPassword, _email, kdfConfig); var key = await _cryptoService.MakeKeyAsync(MasterPassword, _email, kdfConfig);
var storedKeyHash = await _cryptoService.GetKeyHashAsync(); var storedKeyHash = await _cryptoService.GetKeyHashAsync();
var passwordValid = false; var passwordValid = false;
MasterPasswordPolicyOptions enforcedMasterPasswordOptions = null;
if (storedKeyHash != null) if (storedKeyHash != null)
{ {
@@ -305,9 +310,11 @@ namespace Bit.App.Pages
var keyHash = await _cryptoService.HashPasswordAsync(MasterPassword, key, HashPurpose.ServerAuthorization); var keyHash = await _cryptoService.HashPasswordAsync(MasterPassword, key, HashPurpose.ServerAuthorization);
var request = new PasswordVerificationRequest(); var request = new PasswordVerificationRequest();
request.MasterPasswordHash = keyHash; request.MasterPasswordHash = keyHash;
try try
{ {
await _apiService.PostAccountVerifyPasswordAsync(request); var response = await _apiService.PostAccountVerifyPasswordAsync(request);
enforcedMasterPasswordOptions = response.MasterPasswordPolicy;
passwordValid = true; passwordValid = true;
var localKeyHash = await _cryptoService.HashPasswordAsync(MasterPassword, key, HashPurpose.LocalAuthorization); var localKeyHash = await _cryptoService.HashPasswordAsync(MasterPassword, key, HashPurpose.LocalAuthorization);
await _cryptoService.SetKeyHashAsync(localKeyHash); await _cryptoService.SetKeyHashAsync(localKeyHash);
@@ -328,6 +335,14 @@ namespace Bit.App.Pages
var pinKey = await _cryptoService.MakePinKeyAysnc(decPin, _email, kdfConfig); var pinKey = await _cryptoService.MakePinKeyAysnc(decPin, _email, kdfConfig);
await _stateService.SetPinProtectedKeyAsync(await _cryptoService.EncryptAsync(key.Key, pinKey)); await _stateService.SetPinProtectedKeyAsync(await _cryptoService.EncryptAsync(key.Key, pinKey));
} }
if (await RequirePasswordChangeAsync(enforcedMasterPasswordOptions))
{
// Save the ForcePasswordResetReason to force a password reset after unlock
await _stateService.SetForcePasswordResetReasonAsync(
ForcePasswordResetReason.WeakMasterPasswordOnLogin);
}
MasterPassword = string.Empty; MasterPassword = string.Empty;
await AppHelpers.ResetInvalidUnlockAttemptsAsync(); await AppHelpers.ResetInvalidUnlockAttemptsAsync();
await SetKeyAndContinueAsync(key); await SetKeyAndContinueAsync(key);
@@ -352,6 +367,37 @@ namespace Bit.App.Pages
} }
} }
/// <summary>
/// Checks if the master password requires updating to meet the enforced policy requirements
/// </summary>
/// <param name="options"></param>
private async Task<bool> RequirePasswordChangeAsync(MasterPasswordPolicyOptions options = null)
{
// If no policy options are provided, attempt to load them from the policy service
var enforcedOptions = options ?? await _policyService.GetMasterPasswordPolicyOptions();
// No policy to enforce on login/unlock
if (!(enforcedOptions is { EnforceOnLogin: true }))
{
return false;
}
var strength = _passwordGenerationService.PasswordStrength(
MasterPassword, _passwordGenerationService.GetPasswordStrengthUserInput(_email))?.Score;
if (!strength.HasValue)
{
_logger.Error("Unable to evaluate master password strength during unlock");
return false;
}
return !await _policyService.EvaluateMasterPassword(
strength.Value,
MasterPassword,
enforcedOptions
);
}
public async Task LogOutAsync() public async Task LogOutAsync()
{ {
var confirmed = await _platformUtilsService.ShowDialogAsync(AppResources.LogoutConfirmation, var confirmed = await _platformUtilsService.ShowDialogAsync(AppResources.LogoutConfirmation,
@@ -385,7 +431,8 @@ namespace Bit.App.Pages
public async Task PromptBiometricAsync() public async Task PromptBiometricAsync()
{ {
BiometricIntegrityValid = await _biometricService.ValidateIntegrityAsync(); BiometricIntegrityValid = await _platformUtilsService.IsBiometricIntegrityValidAsync();
BiometricButtonVisible = BiometricIntegrityValid;
if (!BiometricLock || !BiometricIntegrityValid) if (!BiometricLock || !BiometricIntegrityValid)
{ {
return; return;

View File

@@ -46,7 +46,7 @@
BackgroundColor="Transparent" BackgroundColor="Transparent"
BorderColor="{DynamicResource PrimaryColor}"> BorderColor="{DynamicResource PrimaryColor}">
<Label <Label
Text="{u:I18n UpdateMasterPasswordWarning}" Text="{Binding UpdateMasterPasswordWarningText }"
StyleClass="text-muted, text-sm, text-bold" StyleClass="text-muted, text-sm, text-bold"
HorizontalTextAlignment="Center" /> HorizontalTextAlignment="Center" />
</Frame> </Frame>
@@ -74,6 +74,40 @@
HorizontalTextAlignment="Start" /> HorizontalTextAlignment="Start" />
</Frame> </Frame>
</Grid> </Grid>
<Grid StyleClass="box-row" IsVisible="{Binding RequireCurrentPassword }">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Label
Text="{u:I18n CurrentMasterPassword}"
StyleClass="box-label"
Grid.Row="0"
Grid.Column="0" />
<controls:MonoEntry
x:Name="_currentMasterPassword"
Text="{Binding CurrentMasterPassword}"
StyleClass="box-value"
IsSpellCheckEnabled="False"
IsTextPredictionEnabled="False"
IsPassword="{Binding ShowPassword, Converter={StaticResource inverseBool}}"
Grid.Row="1"
Grid.Column="0" />
<controls:IconButton
StyleClass="box-row-button, box-row-button-platform"
Text="{Binding ShowPasswordIcon}"
Command="{Binding TogglePasswordCommand}"
Grid.Row="0"
Grid.Column="1"
Grid.RowSpan="2"
AutomationProperties.IsInAccessibleTree="True"
AutomationProperties.Name="{u:I18n ToggleVisibility}"
AutomationProperties.HelpText="{Binding PasswordVisibilityAccessibilityText}" />
</Grid>
<Grid StyleClass="box-row"> <Grid StyleClass="box-row">
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="Auto" /> <RowDefinition Height="Auto" />

View File

@@ -1,27 +1,68 @@
using System; using System;
using System.Threading.Tasks; using System.Threading.Tasks;
using Bit.App.Resources; using Bit.App.Resources;
using Bit.Core.Abstractions;
using Bit.Core.Enums;
using Bit.Core.Exceptions; using Bit.Core.Exceptions;
using Bit.Core.Models.Domain;
using Bit.Core.Models.Request; using Bit.Core.Models.Request;
using Bit.Core.Utilities;
using Xamarin.CommunityToolkit.ObjectModel;
using Xamarin.Forms; using Xamarin.Forms;
namespace Bit.App.Pages namespace Bit.App.Pages
{ {
public class UpdateTempPasswordPageViewModel : BaseChangePasswordViewModel public class UpdateTempPasswordPageViewModel : BaseChangePasswordViewModel
{ {
private readonly IUserVerificationService _userVerificationService;
private ForcePasswordResetReason _reason = ForcePasswordResetReason.AdminForcePasswordReset;
public UpdateTempPasswordPageViewModel() public UpdateTempPasswordPageViewModel()
{ {
PageTitle = AppResources.UpdateMasterPassword; PageTitle = AppResources.UpdateMasterPassword;
TogglePasswordCommand = new Command(TogglePassword); TogglePasswordCommand = new Command(TogglePassword);
ToggleConfirmPasswordCommand = new Command(ToggleConfirmPassword); ToggleConfirmPasswordCommand = new Command(ToggleConfirmPassword);
SubmitCommand = new Command(async () => await SubmitAsync()); SubmitCommand = new AsyncCommand(SubmitAsync,
onException: ex => HandleException(ex),
allowsMultipleExecutions: false);
_userVerificationService = ServiceContainer.Resolve<IUserVerificationService>();
} }
public Command SubmitCommand { get; } public AsyncCommand SubmitCommand { get; }
public Command TogglePasswordCommand { get; } public Command TogglePasswordCommand { get; }
public Command ToggleConfirmPasswordCommand { get; } public Command ToggleConfirmPasswordCommand { get; }
public Action UpdateTempPasswordSuccessAction { get; set; } public Action UpdateTempPasswordSuccessAction { get; set; }
public Action LogOutAction { get; set; } public Action LogOutAction { get; set; }
public string CurrentMasterPassword { get; set; }
public override async Task InitAsync(bool forceSync = false)
{
await base.InitAsync(forceSync);
var forcePasswordResetReason = await _stateService.GetForcePasswordResetReasonAsync();
if (forcePasswordResetReason.HasValue)
{
_reason = forcePasswordResetReason.Value;
}
}
public bool RequireCurrentPassword
{
get => _reason == ForcePasswordResetReason.WeakMasterPasswordOnLogin;
}
public string UpdateMasterPasswordWarningText
{
get
{
return _reason == ForcePasswordResetReason.WeakMasterPasswordOnLogin
? AppResources.UpdateWeakMasterPasswordWarning
: AppResources.UpdateMasterPasswordWarning;
}
}
public void TogglePassword() public void TogglePassword()
{ {
@@ -42,6 +83,12 @@ namespace Bit.App.Pages
return; return;
} }
if (RequireCurrentPassword &&
!await _userVerificationService.VerifyUser(CurrentMasterPassword, VerificationType.MasterPassword))
{
return;
}
// Retrieve details for key generation // Retrieve details for key generation
var kdfConfig = await _stateService.GetActiveUserCustomDataAsync(a => new KdfConfig(a?.Profile)); var kdfConfig = await _stateService.GetActiveUserCustomDataAsync(a => new KdfConfig(a?.Profile));
var email = await _stateService.GetEmailAsync(); var email = await _stateService.GetEmailAsync();
@@ -53,21 +100,29 @@ namespace Bit.App.Pages
// Create new encKey for the User // Create new encKey for the User
var newEncKey = await _cryptoService.RemakeEncKeyAsync(key); var newEncKey = await _cryptoService.RemakeEncKeyAsync(key);
// Create request
var request = new UpdateTempPasswordRequest
{
Key = newEncKey.Item2.EncryptedString,
NewMasterPasswordHash = masterPasswordHash,
MasterPasswordHint = Hint
};
// Initiate API action // Initiate API action
try try
{ {
await _deviceActionService.ShowLoadingAsync(AppResources.UpdatingPassword); await _deviceActionService.ShowLoadingAsync(AppResources.UpdatingPassword);
await _apiService.PutUpdateTempPasswordAsync(request);
switch (_reason)
{
case ForcePasswordResetReason.AdminForcePasswordReset:
await UpdateTempPasswordAsync(masterPasswordHash, newEncKey.Item2.EncryptedString);
break;
case ForcePasswordResetReason.WeakMasterPasswordOnLogin:
await UpdatePasswordAsync(masterPasswordHash, newEncKey.Item2.EncryptedString);
break;
default:
throw new ArgumentOutOfRangeException();
}
await _deviceActionService.HideLoadingAsync(); await _deviceActionService.HideLoadingAsync();
// Clear the force reset password reason
await _stateService.SetForcePasswordResetReasonAsync(null);
_platformUtilsService.ShowToast(null, null, AppResources.UpdatedMasterPassword);
UpdateTempPasswordSuccessAction?.Invoke(); UpdateTempPasswordSuccessAction?.Invoke();
} }
catch (ApiException e) catch (ApiException e)
@@ -85,5 +140,32 @@ namespace Bit.App.Pages
} }
} }
} }
private async Task UpdateTempPasswordAsync(string newMasterPasswordHash, string newEncKey)
{
var request = new UpdateTempPasswordRequest
{
Key = newEncKey,
NewMasterPasswordHash = newMasterPasswordHash,
MasterPasswordHint = Hint
};
await _apiService.PutUpdateTempPasswordAsync(request);
}
private async Task UpdatePasswordAsync(string newMasterPasswordHash, string newEncKey)
{
var currentPasswordHash = await _cryptoService.HashPasswordAsync(CurrentMasterPassword, null);
var request = new PasswordRequest
{
MasterPasswordHash = currentPasswordHash,
Key = newEncKey,
NewMasterPasswordHash = newMasterPasswordHash,
MasterPasswordHint = Hint
};
await _apiService.PostPasswordAsync(request);
}
} }
} }

View File

@@ -7,10 +7,7 @@ using Bit.App.Pages.Accounts;
using Bit.App.Resources; using Bit.App.Resources;
using Bit.Core.Abstractions; using Bit.Core.Abstractions;
using Bit.Core.Enums; using Bit.Core.Enums;
using Bit.Core.Models;
using Bit.Core.Models.Domain; using Bit.Core.Models.Domain;
using Bit.Core.Models.Response;
using Bit.Core.Models.View;
using Bit.Core.Services; using Bit.Core.Services;
using Bit.Core.Utilities; using Bit.Core.Utilities;
using Xamarin.CommunityToolkit.ObjectModel; using Xamarin.CommunityToolkit.ObjectModel;
@@ -51,7 +48,7 @@ namespace Bit.App.Pages
private bool _reportLoggingEnabled; private bool _reportLoggingEnabled;
private bool _approvePasswordlessLoginRequests; private bool _approvePasswordlessLoginRequests;
private bool _shouldConnectToWatch; private bool _shouldConnectToWatch;
private List<KeyValuePair<string, int?>> _vaultTimeouts = private readonly static List<KeyValuePair<string, int?>> VaultTimeoutOptions =
new List<KeyValuePair<string, int?>> new List<KeyValuePair<string, int?>>
{ {
new KeyValuePair<string, int?>(AppResources.Immediately, 0), new KeyValuePair<string, int?>(AppResources.Immediately, 0),
@@ -65,7 +62,7 @@ namespace Bit.App.Pages
new KeyValuePair<string, int?>(AppResources.Never, null), new KeyValuePair<string, int?>(AppResources.Never, null),
new KeyValuePair<string, int?>(AppResources.Custom, CustomVaultTimeoutValue), new KeyValuePair<string, int?>(AppResources.Custom, CustomVaultTimeoutValue),
}; };
private List<KeyValuePair<string, VaultTimeoutAction>> _vaultTimeoutActions = private readonly static List<KeyValuePair<string, VaultTimeoutAction>> VaultTimeoutActionOptions =
new List<KeyValuePair<string, VaultTimeoutAction>> new List<KeyValuePair<string, VaultTimeoutAction>>
{ {
new KeyValuePair<string, VaultTimeoutAction>(AppResources.Lock, VaultTimeoutAction.Lock), new KeyValuePair<string, VaultTimeoutAction>(AppResources.Lock, VaultTimeoutAction.Lock),
@@ -74,6 +71,8 @@ namespace Bit.App.Pages
private Policy _vaultTimeoutPolicy; private Policy _vaultTimeoutPolicy;
private int? _vaultTimeout; private int? _vaultTimeout;
private List<KeyValuePair<string, int?>> _vaultTimeoutOptions = VaultTimeoutOptions;
private List<KeyValuePair<string, VaultTimeoutAction>> _vaultTimeoutActionOptions = VaultTimeoutActionOptions;
public SettingsPageViewModel() public SettingsPageViewModel()
{ {
@@ -117,20 +116,28 @@ namespace Bit.App.Pages
_localizeService.GetLocaleShortTime(lastSync.Value)); _localizeService.GetLocaleShortTime(lastSync.Value));
} }
_vaultTimeoutPolicy = null;
_vaultTimeoutOptions = VaultTimeoutOptions;
_vaultTimeoutActionOptions = VaultTimeoutActionOptions;
_vaultTimeout = await _vaultTimeoutService.GetVaultTimeout();
_vaultTimeoutDisplayValue = _vaultTimeoutOptions.FirstOrDefault(o => o.Value == _vaultTimeout).Key;
_vaultTimeoutDisplayValue ??= _vaultTimeoutOptions.Where(o => o.Value == CustomVaultTimeoutValue).First().Key;
var action = await _vaultTimeoutService.GetVaultTimeoutAction() ?? VaultTimeoutAction.Lock;
_vaultTimeoutActionDisplayValue = _vaultTimeoutActionOptions.FirstOrDefault(o => o.Value == action).Key;
if (await _policyService.PolicyAppliesToUser(PolicyType.MaximumVaultTimeout)) if (await _policyService.PolicyAppliesToUser(PolicyType.MaximumVaultTimeout))
{ {
// if we have a vault timeout policy, we need to filter the timeout options
_vaultTimeoutPolicy = (await _policyService.GetAll(PolicyType.MaximumVaultTimeout)).First(); _vaultTimeoutPolicy = (await _policyService.GetAll(PolicyType.MaximumVaultTimeout)).First();
var minutes = _policyService.GetPolicyInt(_vaultTimeoutPolicy, "minutes").GetValueOrDefault(); var policyMinutes = _policyService.GetPolicyInt(_vaultTimeoutPolicy, PolicyService.TIMEOUT_POLICY_MINUTES);
_vaultTimeouts = _vaultTimeouts.Where(t => _vaultTimeoutOptions = _vaultTimeoutOptions.Where(t =>
t.Value <= minutes && t.Value <= policyMinutes &&
(t.Value > 0 || t.Value == CustomVaultTimeoutValue) && (t.Value > 0 || t.Value == CustomVaultTimeoutValue) &&
t.Value != null).ToList(); t.Value != null).ToList();
} }
_vaultTimeout = await _vaultTimeoutService.GetVaultTimeout();
_vaultTimeoutDisplayValue = _vaultTimeouts.FirstOrDefault(o => o.Value == _vaultTimeout).Key;
var action = await _stateService.GetVaultTimeoutActionAsync() ?? VaultTimeoutAction.Lock;
_vaultTimeoutActionDisplayValue = _vaultTimeoutActions.FirstOrDefault(o => o.Value == action).Key;
var pinSet = await _vaultTimeoutService.IsPinLockSetAsync(); var pinSet = await _vaultTimeoutService.IsPinLockSetAsync();
_pin = pinSet.Item1 || pinSet.Item2; _pin = pinSet.Item1 || pinSet.Item2;
_biometric = await _vaultTimeoutService.IsBiometricLockSetAsync(); _biometric = await _vaultTimeoutService.IsBiometricLockSetAsync();
@@ -266,7 +273,7 @@ namespace Bit.App.Pages
{ {
var oldTimeout = _vaultTimeout; var oldTimeout = _vaultTimeout;
var options = _vaultTimeouts.Select( var options = _vaultTimeoutOptions.Select(
o => o.Key == _vaultTimeoutDisplayValue ? $"✓ {o.Key}" : o.Key).ToArray(); o => o.Key == _vaultTimeoutDisplayValue ? $"✓ {o.Key}" : o.Key).ToArray();
if (promptOptions) if (promptOptions)
{ {
@@ -277,7 +284,7 @@ namespace Bit.App.Pages
return; return;
} }
var cleanSelection = selection.Replace("✓ ", string.Empty); var cleanSelection = selection.Replace("✓ ", string.Empty);
var selectionOption = _vaultTimeouts.FirstOrDefault(o => o.Key == cleanSelection); var selectionOption = _vaultTimeoutOptions.FirstOrDefault(o => o.Key == cleanSelection);
// Check if the selected Timeout action is "Never" and if it's different from the previous selected value // Check if the selected Timeout action is "Never" and if it's different from the previous selected value
if (selectionOption.Value == null && selectionOption.Value != oldTimeout) if (selectionOption.Value == null && selectionOption.Value != oldTimeout)
@@ -295,13 +302,13 @@ namespace Bit.App.Pages
if (_vaultTimeoutPolicy != null) if (_vaultTimeoutPolicy != null)
{ {
var maximumTimeout = _policyService.GetPolicyInt(_vaultTimeoutPolicy, "minutes"); var maximumTimeout = _policyService.GetPolicyInt(_vaultTimeoutPolicy, PolicyService.TIMEOUT_POLICY_MINUTES);
if (newTimeout > maximumTimeout) if (newTimeout > maximumTimeout)
{ {
await _platformUtilsService.ShowDialogAsync(AppResources.VaultTimeoutToLarge, AppResources.Warning); await _platformUtilsService.ShowDialogAsync(AppResources.VaultTimeoutToLarge, AppResources.Warning);
var timeout = await _vaultTimeoutService.GetVaultTimeout(); var timeout = await _vaultTimeoutService.GetVaultTimeout();
_vaultTimeoutDisplayValue = _vaultTimeouts.FirstOrDefault(o => o.Value == timeout).Key ?? _vaultTimeoutDisplayValue = _vaultTimeoutOptions.FirstOrDefault(o => o.Value == timeout).Key ??
AppResources.Custom; AppResources.Custom;
return; return;
} }
@@ -374,7 +381,13 @@ namespace Bit.App.Pages
public async Task VaultTimeoutActionAsync() public async Task VaultTimeoutActionAsync()
{ {
var options = _vaultTimeoutActions.Select(o => if (_vaultTimeoutPolicy != null &&
!string.IsNullOrEmpty(_policyService.GetPolicyString(_vaultTimeoutPolicy, PolicyService.TIMEOUT_POLICY_ACTION)))
{
// do nothing if we have a policy set
return;
}
var options = _vaultTimeoutActionOptions.Select(o =>
o.Key == _vaultTimeoutActionDisplayValue ? $"✓ {o.Key}" : o.Key).ToArray(); o.Key == _vaultTimeoutActionDisplayValue ? $"✓ {o.Key}" : o.Key).ToArray();
var selection = await Page.DisplayActionSheet(AppResources.VaultTimeoutAction, var selection = await Page.DisplayActionSheet(AppResources.VaultTimeoutAction,
AppResources.Cancel, null, options); AppResources.Cancel, null, options);
@@ -393,7 +406,7 @@ namespace Bit.App.Pages
cleanSelection = AppResources.Lock; cleanSelection = AppResources.Lock;
} }
} }
var selectionOption = _vaultTimeoutActions.FirstOrDefault(o => o.Key == cleanSelection); var selectionOption = _vaultTimeoutActionOptions.FirstOrDefault(o => o.Key == cleanSelection);
var changed = _vaultTimeoutActionDisplayValue != selectionOption.Key; var changed = _vaultTimeoutActionDisplayValue != selectionOption.Key;
_vaultTimeoutActionDisplayValue = selectionOption.Key; _vaultTimeoutActionDisplayValue = selectionOption.Key;
await _vaultTimeoutService.SetVaultTimeoutOptionsAsync(_vaultTimeout, await _vaultTimeoutService.SetVaultTimeoutOptionsAsync(_vaultTimeout,
@@ -597,14 +610,36 @@ namespace Bit.App.Pages
} }
if (_vaultTimeoutPolicy != null) if (_vaultTimeoutPolicy != null)
{ {
var maximumTimeout = _policyService.GetPolicyInt(_vaultTimeoutPolicy, "minutes").GetValueOrDefault(); var policyMinutes = _policyService.GetPolicyInt(_vaultTimeoutPolicy, PolicyService.TIMEOUT_POLICY_MINUTES);
securityItems.Insert(0, new SettingsPageListItem var policyAction = _policyService.GetPolicyString(_vaultTimeoutPolicy, PolicyService.TIMEOUT_POLICY_ACTION);
if (policyMinutes.HasValue || !string.IsNullOrWhiteSpace(policyAction))
{ {
Name = string.Format(AppResources.VaultTimeoutPolicyInEffect, string policyAlert;
Math.Floor((float)maximumTimeout / 60), if (policyMinutes.HasValue && string.IsNullOrWhiteSpace(policyAction))
maximumTimeout % 60), {
UseFrame = true, policyAlert = string.Format(AppResources.VaultTimeoutPolicyInEffect,
}); Math.Floor((float)policyMinutes / 60),
policyMinutes % 60);
}
else if (!policyMinutes.HasValue && !string.IsNullOrWhiteSpace(policyAction))
{
policyAlert = string.Format(AppResources.VaultTimeoutActionPolicyInEffect,
policyAction == PolicyService.TIMEOUT_POLICY_ACTION_LOCK ? AppResources.Lock : AppResources.LogOut);
}
else
{
policyAlert = string.Format(AppResources.VaultTimeoutPolicyWithActionInEffect,
Math.Floor((float)policyMinutes / 60),
policyMinutes % 60,
policyAction == PolicyService.TIMEOUT_POLICY_ACTION_LOCK ? AppResources.Lock : AppResources.LogOut);
}
securityItems.Insert(0, new SettingsPageListItem
{
Name = policyAlert,
UseFrame = true,
});
}
} }
if (Device.RuntimePlatform == Device.Android) if (Device.RuntimePlatform == Device.Android)
{ {
@@ -792,12 +827,12 @@ namespace Bit.App.Pages
private VaultTimeoutAction GetVaultTimeoutActionFromKey(string key) private VaultTimeoutAction GetVaultTimeoutActionFromKey(string key)
{ {
return _vaultTimeoutActions.FirstOrDefault(o => o.Key == key).Value; return _vaultTimeoutActionOptions.FirstOrDefault(o => o.Key == key).Value;
} }
private int? GetVaultTimeoutFromKey(string key) private int? GetVaultTimeoutFromKey(string key)
{ {
return _vaultTimeouts.FirstOrDefault(o => o.Key == key).Value; return _vaultTimeoutOptions.FirstOrDefault(o => o.Key == key).Value;
} }
private string CreateSelectableOption(string option, bool selected) => selected ? $"✓ {option}" : option; private string CreateSelectableOption(string option, bool selected) => selected ? $"✓ {option}" : option;

View File

@@ -3,6 +3,7 @@ using System.Threading.Tasks;
using Bit.App.Effects; using Bit.App.Effects;
using Bit.App.Models; using Bit.App.Models;
using Bit.App.Resources; using Bit.App.Resources;
using Bit.Core;
using Bit.Core.Abstractions; using Bit.Core.Abstractions;
using Bit.Core.Models.Data; using Bit.Core.Models.Data;
using Bit.Core.Utilities; using Bit.Core.Utilities;
@@ -15,6 +16,7 @@ namespace Bit.App.Pages
private readonly IBroadcasterService _broadcasterService; private readonly IBroadcasterService _broadcasterService;
private readonly IMessagingService _messagingService; private readonly IMessagingService _messagingService;
private readonly IKeyConnectorService _keyConnectorService; private readonly IKeyConnectorService _keyConnectorService;
private readonly IStateService _stateService;
private readonly LazyResolve<ILogger> _logger = new LazyResolve<ILogger>("logger"); private readonly LazyResolve<ILogger> _logger = new LazyResolve<ILogger>("logger");
private NavigationPage _groupingsPage; private NavigationPage _groupingsPage;
@@ -26,6 +28,7 @@ namespace Bit.App.Pages
_broadcasterService = ServiceContainer.Resolve<IBroadcasterService>("broadcasterService"); _broadcasterService = ServiceContainer.Resolve<IBroadcasterService>("broadcasterService");
_messagingService = ServiceContainer.Resolve<IMessagingService>("messagingService"); _messagingService = ServiceContainer.Resolve<IMessagingService>("messagingService");
_keyConnectorService = ServiceContainer.Resolve<IKeyConnectorService>("keyConnectorService"); _keyConnectorService = ServiceContainer.Resolve<IKeyConnectorService>("keyConnectorService");
_stateService = ServiceContainer.Resolve<IStateService>();
_groupingsPage = new NavigationPage(new GroupingsPage(true, previousPage: previousPage)) _groupingsPage = new NavigationPage(new GroupingsPage(true, previousPage: previousPage))
{ {
@@ -95,6 +98,13 @@ namespace Bit.App.Pages
{ {
_messagingService.Send("convertAccountToKeyConnector"); _messagingService.Send("convertAccountToKeyConnector");
} }
var forcePasswordResetReason = await _stateService.GetForcePasswordResetReasonAsync();
if (forcePasswordResetReason.HasValue)
{
_messagingService.Send(Constants.ForceUpdatePassword);
}
} }
protected override void OnDisappearing() protected override void OnDisappearing()

View File

@@ -16,7 +16,7 @@
IconImageSource="{Binding AvatarImageSource}" IconImageSource="{Binding AvatarImageSource}"
Command="{Binding Source={x:Reference _accountListOverlay}, Path=ToggleVisibililtyCommand}" Command="{Binding Source={x:Reference _accountListOverlay}, Path=ToggleVisibililtyCommand}"
Order="Primary" Order="Primary"
Priority="-2" Priority="-1"
UseOriginalImage="True" UseOriginalImage="True"
AutomationProperties.IsInAccessibleTree="True" AutomationProperties.IsInAccessibleTree="True"
AutomationProperties.Name="{u:I18n Account}" /> AutomationProperties.Name="{u:I18n Account}" />

View File

@@ -69,14 +69,16 @@ namespace Bit.App.Pages
return; return;
} }
// TODO: There's currently an issue on iOS where the toolbar item is not getting updated try
// as the others somehow. Removing this so at least we get the circle with ".." instead
// of a white circle
if (Device.RuntimePlatform != Device.iOS)
{ {
// don't crash the app if the avatar can't be loaded, just log the ex
_accountAvatar?.OnAppearing(); _accountAvatar?.OnAppearing();
_vm.AvatarImageSource = await GetAvatarImageSourceAsync(); _vm.AvatarImageSource = await GetAvatarImageSourceAsync();
} }
catch (Exception ex)
{
LoggerHelper.LogEvenIfCantBeResolved(ex);
}
_broadcasterService.Subscribe(nameof(CipherSelectionPage), async (message) => _broadcasterService.Subscribe(nameof(CipherSelectionPage), async (message) =>
{ {

View File

@@ -970,18 +970,18 @@ namespace Bit.App.Resources {
/// <summary> /// <summary>
/// Looks up a localized string similar to Biometric unlock disabled pending verification of master password.. /// Looks up a localized string similar to Biometric unlock disabled pending verification of master password..
/// </summary> /// </summary>
public static string BiometricInvalidated { public static string AccountBiometricInvalidated {
get { get {
return ResourceManager.GetString("BiometricInvalidated", resourceCulture); return ResourceManager.GetString("AccountBiometricInvalidated", resourceCulture);
} }
} }
/// <summary> /// <summary>
/// Looks up a localized string similar to Biometric unlock for autofill disabled pending verification of master password.. /// Looks up a localized string similar to Biometric unlock for autofill disabled pending verification of master password..
/// </summary> /// </summary>
public static string BiometricInvalidatedExtension { public static string AccountBiometricInvalidatedExtension {
get { get {
return ResourceManager.GetString("BiometricInvalidatedExtension", resourceCulture); return ResourceManager.GetString("AccountBiometricInvalidatedExtension", resourceCulture);
} }
} }
@@ -1687,6 +1687,15 @@ namespace Bit.App.Resources {
} }
} }
/// <summary>
/// Looks up a localized string similar to Current master password.
/// </summary>
public static string CurrentMasterPassword {
get {
return ResourceManager.GetString("CurrentMasterPassword", resourceCulture);
}
}
/// <summary> /// <summary>
/// Looks up a localized string similar to Custom. /// Looks up a localized string similar to Custom.
/// </summary> /// </summary>
@@ -6452,6 +6461,15 @@ namespace Bit.App.Resources {
} }
} }
/// <summary>
/// Looks up a localized string similar to Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour..
/// </summary>
public static string UpdateWeakMasterPasswordWarning {
get {
return ResourceManager.GetString("UpdateWeakMasterPasswordWarning", resourceCulture);
}
}
/// <summary> /// <summary>
/// Looks up a localized string similar to Updating password. /// Looks up a localized string similar to Updating password.
/// </summary> /// </summary>
@@ -6677,6 +6695,15 @@ namespace Bit.App.Resources {
} }
} }
/// <summary>
/// Looks up a localized string similar to Your organization policies have set your vault timeout action to {0}..
/// </summary>
public static string VaultTimeoutActionPolicyInEffect {
get {
return ResourceManager.GetString("VaultTimeoutActionPolicyInEffect", resourceCulture);
}
}
/// <summary> /// <summary>
/// Looks up a localized string similar to Logging out will remove all access to your vault and requires online authentication after the timeout period. Are you sure you want to use this setting?. /// Looks up a localized string similar to Logging out will remove all access to your vault and requires online authentication after the timeout period. Are you sure you want to use this setting?.
/// </summary> /// </summary>
@@ -6687,7 +6714,7 @@ namespace Bit.App.Resources {
} }
/// <summary> /// <summary>
/// Looks up a localized string similar to Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). /// Looks up a localized string similar to Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s)..
/// </summary> /// </summary>
public static string VaultTimeoutPolicyInEffect { public static string VaultTimeoutPolicyInEffect {
get { get {
@@ -6695,6 +6722,15 @@ namespace Bit.App.Resources {
} }
} }
/// <summary>
/// Looks up a localized string similar to Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}..
/// </summary>
public static string VaultTimeoutPolicyWithActionInEffect {
get {
return ResourceManager.GetString("VaultTimeoutPolicyWithActionInEffect", resourceCulture);
}
}
/// <summary> /// <summary>
/// Looks up a localized string similar to Your vault timeout exceeds the restrictions set by your organization.. /// Looks up a localized string similar to Your vault timeout exceeds the restrictions set by your organization..
/// </summary> /// </summary>

View File

@@ -1752,11 +1752,11 @@ Skandering gebeur outomaties.</value>
<value>Wil u dit regtig na die asblik stuur?</value> <value>Wil u dit regtig na die asblik stuur?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometriese ontgrendeling gedeaktiveer hangende bevestiging van hoofwagwoord.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometriese ontgrendeling vir outovul gedeaktiveer hangende bevestiging van hoofwagwoord.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Aktiveer sinchronisering by verfrissing</value> <value>Aktiveer sinchronisering by verfrissing</value>
@@ -2142,6 +2142,12 @@ Skandering gebeur outomaties.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>U organisasiebeleide beïnvloed u kluisuitelling. Maksimum toegelate kluisuittelling is {0} uur en {1} minuut(e).</value> <value>U organisasiebeleide beïnvloed u kluisuitelling. Maksimum toegelate kluisuittelling is {0} uur en {1} minuut(e).</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Jou organisasie se beleid affekteer jou kluis-uittel tyd. Maksimum toelaatbare kluis-uittel tyd is {0} uur(ure) en {1} minuut(minute). Jou kluis-uittel aksie is gestel na {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Jou organisasie se beleid het jou kluis-uittel aksie na {0} verander.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>U kluisuittelling oorskry die beperkinge wat deur u organisasie daargestel is.</value> <value>U kluisuittelling oorskry die beperkinge wat deur u organisasie daargestel is.</value>
</data> </data>
@@ -2592,15 +2598,21 @@ Wil u na die rekening omskakel?</value>
<value>Organisasie SSO identifiseerder vereis.</value> <value>Organisasie SSO identifiseerder vereis.</value>
</data> </data>
<data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve"> <data name="AddTheKeyToAnExistingOrNewItem" xml:space="preserve">
<value>Add the key to an existing or new item</value> <value>Voeg die sleutel by 'n huidige of nuwe item</value>
</data> </data>
<data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve"> <data name="ThereAreNoItemsInYourVaultThatMatchX" xml:space="preserve">
<value>There are no items in your vault that match "{0}"</value> <value>Daar is geen items in jou kluis wat met "{0}" ooreenstem nie</value>
</data> </data>
<data name="SearchForAnItemOrAddANewItem" xml:space="preserve"> <data name="SearchForAnItemOrAddANewItem" xml:space="preserve">
<value>Search for an item or add a new item</value> <value>Soek vir 'n item of voeg 'n nuwe een by</value>
</data> </data>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>Daar is geen items wat met die soekterm ooreenstem nie</value>
</data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data> </data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@
<value>هل تريد حقاً أن ترسل إلى سلة المهملات؟</value> <value>هل تريد حقاً أن ترسل إلى سلة المهملات؟</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>تم تعطيل فتح القفل الحيوي في انتظار التحقق من كلمة المرور الرئيسية.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>تم تعطيل إلغاء القفل البيومتري للملء التلقائي في انتظار التحقق من كلمة المرور الرئيسية.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>تمكين المزامنة عند التحديث</value> <value>تمكين المزامنة عند التحديث</value>
@@ -2143,6 +2143,12 @@
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>سياسات مؤسستك تؤثر على مهلة الخزنة الخاص بك. الحد الأقصى المسموح به لمهلة الخزنة هو {0} ساعة و {1} دقيقة</value> <value>سياسات مؤسستك تؤثر على مهلة الخزنة الخاص بك. الحد الأقصى المسموح به لمهلة الخزنة هو {0} ساعة و {1} دقيقة</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>سياسات مؤسستك تؤثر على مهلة خزنتك. الحد الأقصى المسموح به لمهلة الخزنة هو {0} ساعة(ساعات) و {1} دقيقة(دقائق). يتم تعيين إجراء مهلة المخزن الخاص بك إلى {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>سياسات مؤسستك قامت بتعيين إجراء مهلة خزنتك إلى {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>مهلة خزنتك تتجاوز القيود التي تضعها مؤسستك.</value> <value>مهلة خزنتك تتجاوز القيود التي تضعها مؤسستك.</value>
</data> </data>
@@ -2604,4 +2610,10 @@
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>لا توجد عناصر تطابق البحث</value> <value>لا توجد عناصر تطابق البحث</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>كلمة المرور الرئيسية الخاصة بك لا تفي بواحدة أو أكثر من سياسات مؤسستك. من أجل الوصول إلى الخزنة، يجب عليك تحديث كلمة المرور الرئيسية الآن. سيتم تسجيل خروجك من الجلسة الحالية، مما يتطلب منك تسجيل الدخول مرة أخرى. وقد تظل الجلسات النشطة على أجهزة أخرى نشطة لمدة تصل إلى ساعة واحدة.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>كلمة المرور الرئيسية الحالية</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Skan prosesi avtomatik baş tutacaq.</value>
<value>Həqiqətən tullantı qutusuna göndərmək istəyirsiniz?</value> <value>Həqiqətən tullantı qutusuna göndərmək istəyirsiniz?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Ana parolun təsdiqlənməsi gözlənildiyi üçün biometrik kilid açma sıradan çıxarıldı.</value> <value>Ana parolun təsdiqlənməsi gözlənildiyi üçün bu hesab üzrə biometrik kilid açma sıradan çıxarıldı.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Ana parolun təsdiqlənməsi gözlənildiyi üçün avto-doldurma üzrə biometrik kilid açma sıradan çıxarıldı.</value> <value>Ana parolun təsdiqlənməsi gözlənildiyi üçün bu hesab üzrə avto-doldurma biometrik kilid açma sıradan çıxarıldı.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Təzələmə əsnasında eyniləşdirməni fəallaşdır</value> <value>Təzələmə əsnasında eyniləşdirməni fəallaşdır</value>
@@ -2142,6 +2142,12 @@ Skan prosesi avtomatik baş tutacaq.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Təşkilatınızın siyasətləri, anbarınızın vaxt bitişinə təsir edir. Anbar vaxt bitişi üçün icazə verilən maksimum vaxt {0} saat {1} dəqiqədir</value> <value>Təşkilatınızın siyasətləri, anbarınızın vaxt bitişinə təsir edir. Anbar vaxt bitişi üçün icazə verilən maksimum vaxt {0} saat {1} dəqiqədir</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Təşkilatınızın siyasətləri, anbarınızın vaxt bitişinə təsir edir. Anbar vaxt bitişi üçün icazə verilən maksimum vaxt {0} saat {1} dəqiqədir. Anbar vaxt bitişi əməliyyatı {2} olaraq tənzimləndi.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Təşkilatınızın siyasətləri, anbar vaxt bitişi əməliyyatınızı {0} olaraq tənzimlədi.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Anbar vaxt bitişi, təşkilatınız tərəfindən tənzimlənən məhdudiyyətləri aşır.</value> <value>Anbar vaxt bitişi, təşkilatınız tərəfindən tənzimlənən məhdudiyyətləri aşır.</value>
</data> </data>
@@ -2602,4 +2608,10 @@ Bu hesaba keçmək istəyirsiniz?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Axtarışa uyğun gələn heç bir element yoxdur</value> <value>Axtarışa uyğun gələn heç bir element yoxdur</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Ana parolunuz təşkilatınızdakı siyasətlərdən birinə və ya bir neçəsinə uyğun gəlmir. Anbara müraciət üçün ana parolunuzu indi güncəlləməlisiniz. Davam etsəniz, hazırkı seansdan çıxış etmiş və təkrar giriş etməli olacaqsınız. Digər cihazlardakı aktiv seanslar bir saata qədər aktiv qalmağa davam edə bilər.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Hazırkı ana parol</value>
</data>
</root> </root>

View File

@@ -1751,11 +1751,11 @@
<value>Вы сапраўды хочаце адправіць элемент у сметніцу?</value> <value>Вы сапраўды хочаце адправіць элемент у сметніцу?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Разблакіраванне па біяметрыі адключана. Чакаецца праверка асноўным паролем.</value> <value>Разблакіроўка па біяметрыі для гэтага ўліковага запісу адключана. Чакаецца праверка асноўным паролем.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Разблакіраванне па біяметрыі для аўтазапаўнення адключана. Чакаецца праверка асноўным паролем.</value> <value>Аўтазапаўненне з дапамогай разблакіроўкі па біяметрыі для гэтага ўліковага запісу адключана. Чакаецца праверка асноўным паролем.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Уключыць сінхранізацыю пры абнаўленні</value> <value>Уключыць сінхранізацыю пры абнаўленні</value>
@@ -2142,6 +2142,12 @@
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Палітыка вашай арганізацыі ўплывае на час чакання сховішча. Максімальны дазволены час чакання сховішча складае {0} гадз. і {1} хв.</value> <value>Палітыка вашай арганізацыі ўплывае на час чакання сховішча. Максімальны дазволены час чакання сховішча складае {0} гадз. і {1} хв.</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Палітыка вашай арганізацыі ўплывае на час чакання сховішча. Максімальны дазволены час чакання сховішча складае гадзін: {0}; хвілін: {1}. Для часу чакання вашага сховішча прызначана дзеянне {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Палітыкай вашай арганізацыі прызначана дзеянне {0} для часу чакання вашага сховішча.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Час чакання вашага сховішча перавышае дазволеныя абмежаванні, якія прызначыла ваша арганізацыя.</value> <value>Час чакання вашага сховішча перавышае дазволеныя абмежаванні, якія прызначыла ваша арганізацыя.</value>
</data> </data>
@@ -2603,4 +2609,10 @@
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Адсутнічаюць элементы, якія адпавядаюць пошуку</value> <value>Адсутнічаюць элементы, якія адпавядаюць пошуку</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Ваш асноўны пароль не адпавядае адной або некалькім палітыкам арганізацыі. Для атрымання доступу да сховішча, вы павінны абнавіць яго. Працягваючы, вы выйдзіце з бягучага сеанса і вам неабходна будзе ўвайсці паўторна. Актыўныя сеансы на іншых прыладах могуць заставацца актыўнымі на працягу адной гадзіны.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Бягучы асноўны пароль</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@
<value>Сигурни ли сте, че искате да преместите записа в кошчето?</value> <value>Сигурни ли сте, че искате да преместите записа в кошчето?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Засечена е промяна в биометричните данни. Впишете се с главната парола, за да я включите отново биометричната идентификация.</value> <value>Потвърждаването с биометрични данни е изключено за тази регистрация. Въведете главната парола, за да го включите.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Потвърждаването с биометрични данни е изключено. Въведете главната парола, за да го включите.</value> <value>Автоматичното попълване за потвърждаване с биометрични данни е изключено за тази регистрация. Въведете главната парола, за да го включите.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Синхронизация при опресняване</value> <value>Синхронизация при опресняване</value>
@@ -2142,6 +2142,12 @@
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Настройките на организацията Ви влияят върху времето за достъп до трезора Ви. Максималното разрешено време за достъп е {0} час(а) и {1} минути</value> <value>Настройките на организацията Ви влияят върху времето за достъп до трезора Ви. Максималното разрешено време за достъп е {0} час(а) и {1} минути</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Настройките на организацията Ви влияят върху времето за достъп до трезора Ви. Максималното разрешено време за достъп е {0} час(а) и {1} минута/и. Зададеното действие при изтичане на това време е {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Настройките на организацията Ви задават следното действие при изтичане на времето за достъп до трезора: {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Времето за достъп до трезора Ви превишава ограничението, определено от организацията Ви.</value> <value>Времето за достъп до трезора Ви превишава ограничението, определено от организацията Ви.</value>
</data> </data>
@@ -2603,4 +2609,10 @@ select Add TOTP to store the key safely</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Няма елементи, които отговарят на търсенето</value> <value>Няма елементи, които отговарят на търсенето</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Вашата главна парола не отговаря на една или повече политики на организацията Ви. За да получите достъп до трезора, трябва да промените главната си парола сега. Това означава, че ще бъдете отписан(а) от текущата си сесия и ще трябва да се впишете отново. Активните сесии на други устройства може да продължат да бъдат активни още един час.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Текуща главна парола</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>Do you really want to send to the trash?</value> <value>Do you really want to send to the trash?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Allow sync on refresh</value> <value>Allow sync on refresh</value>
@@ -2141,7 +2141,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2604,4 +2610,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Skeniranje će biti izvršeno automatski.</value>
<value>Želite li zaista poslati u smeće?</value> <value>Želite li zaista poslati u smeće?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometrijsko otključavanje onemogućeno do potvrde glavne lozinke.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometrijsko otključavanje za auto-ispunu onemogućeno do potvrde glavne lozinke.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Uključi sinkronizaciju pri osvježavanju</value> <value>Uključi sinkronizaciju pri osvježavanju</value>
@@ -2142,6 +2142,12 @@ Skeniranje će biti izvršeno automatski.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Pravilo tvoje organizacije utječe na vrijeme isteka trezora. Najveće dozvoljeno vrijeme isteka je {0} sata(i) i {1} minuta.</value> <value>Pravilo tvoje organizacije utječe na vrijeme isteka trezora. Najveće dozvoljeno vrijeme isteka je {0} sata(i) i {1} minuta.</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Vrijeme isteka premašuje ograničenje koju je postavila tvoja organizacija.</value> <value>Vrijeme isteka premašuje ograničenje koju je postavila tvoja organizacija.</value>
</data> </data>
@@ -2602,4 +2608,10 @@ Skeniranje će biti izvršeno automatski.</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ L'escaneig es farà automàticament.</value>
<value>Esteu segur que voleu enviar-ho a la paperera?</value> <value>Esteu segur que voleu enviar-ho a la paperera?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>S'ha detectat un canvi biomètric. Inicieu la sessió mitjançant la contrasenya principal per tornar a activar-la.</value> <value>El desbloqueig biomètric d'aquest compte està deshabilitat mentre es verifica la contrasenya mestra.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Desbloqueig biomètric d'emplenament automàtic deshabilitat. Està pendent de verificació de la contrasenya mestra.</value> <value>El desbloqueig biomètric d'emplenament automàtic d'aquest compte està deshabilitat mentre es verifica la contrasenya mestra.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Activa la sincronització en actualitzar-se</value> <value>Activa la sincronització en actualitzar-se</value>
@@ -2142,6 +2142,12 @@ L'escaneig es farà automàticament.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Les polítiques de l'organització afecten el temps d'espera de la caixa forta. El temps d'espera màxim permès de la caixa forta és de {0} hores i {1} minuts</value> <value>Les polítiques de l'organització afecten el temps d'espera de la caixa forta. El temps d'espera màxim permès de la caixa forta és de {0} hores i {1} minuts</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Les polítiques de l'organització afecten el temps d'espera de la vostra caixa forta. El temps d'espera màxim permès és de {0} hores i {1} minuts. L'acció de temps d'espera de la caixa forta està definida en {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Les polítiques de l'organització han establert l'acció de temps d'espera de la caixa forta a {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>El temps d'espera de la caixa forta supera les restriccions establertes per la vostra organització.</value> <value>El temps d'espera de la caixa forta supera les restriccions establertes per la vostra organització.</value>
</data> </data>
@@ -2603,4 +2609,10 @@ Voleu canviar a aquest compte?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>No hi ha elements que coincidisquen amb la cerca</value> <value>No hi ha elements que coincidisquen amb la cerca</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>La vostra contrasenya mestra no compleix una o més de les polítiques de l'organització. Per accedir a la caixa forta, heu d'actualitzar-la ara. Si continueu, es tancarà la sessió actual i us demanarà que torneu a iniciar-la. Les sessions en altres dispositius poden continuar romanent actives fins a una hora.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Contrasenya mestra actual</value>
</data>
</root> </root>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1752,11 +1752,11 @@ Skanning vil ske automatisk.</value>
<value>Er du sikker på, at du sende til papirkurven?</value> <value>Er du sikker på, at du sende til papirkurven?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometrisk oplåsning deaktiveret - afventer verifikation af hovedadgangskoden.</value> <value>Biometrisk oplåsning af denne konto deaktiveret afventende bekræftelse af hovedadgangskode.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometrisk oplåsning til autoudfyldning deaktiveret - afventer verifikation af hovedadgangskoden.</value> <value>Autoudfyldelse for biometrisk oplåsning af denne konto deaktiveret afventende bekræftelse af hovedadgangskode.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Tillad synk ved opfriskning</value> <value>Tillad synk ved opfriskning</value>
@@ -2142,6 +2142,12 @@ Skanning vil ske automatisk.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Dine organisationspolitikker påvirker din boks-timeout. Maksimum tilladte boks-timeout er {0} time(r) og {1} minut(ter)</value> <value>Dine organisationspolitikker påvirker din boks-timeout. Maksimum tilladte boks-timeout er {0} time(r) og {1} minut(ter)</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Organisationspolitikkerne påvirker boks-timeout. Maks. tilladt boks-timeout er {0} time(r) og {1} minut(ter). Boks-timeout er pt. sat til {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Organisationspolitikker har sat boks-timeouthandlingen til {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Timeout for din boks overskrider de begrænsninger, der er angivet af din organisation.</value> <value>Timeout for din boks overskrider de begrænsninger, der er angivet af din organisation.</value>
</data> </data>
@@ -2603,4 +2609,10 @@ Vil du skifte til denne konto?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Ingen emner matcher søgningen</value> <value>Ingen emner matcher søgningen</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Din hovedadgangskode overholder ikke én eller flere organisationspolitikker. For at få adgang til boksen skal hovedadgangskode opdateres nu. Fortsættes, logges du ud af den nuværende session og vil skulle logger ind igen. Aktive sessioner på andre enheder kan forblive aktive i op til én time.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Aktuel hovedadgangskode</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Das Scannen erfolgt automatisch.</value>
<value>Soll dieser Eintrag wirklich in den Papierkorb verschoben werden?</value> <value>Soll dieser Eintrag wirklich in den Papierkorb verschoben werden?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometrisches Entsperren ist deaktiviert, bis das Master-Passwort eingegeben wurde.</value> <value>Biometrie zum Entsperren ist für dieses Konto deaktiviert, bis das Master-Passwort verifiziert wurde.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometrisches Entsperren für automatisches Ausfüllen ist deaktiviert, bis das Master-Passwort eingegeben wurde.</value> <value>Das Entsperren von Auto-Ausfüllen über Biometrie ist für dieses Konto deaktiviert, bis das Master-Passwort verifiziert wurde.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Synchronisation beim Aktualisieren aktivieren</value> <value>Synchronisation beim Aktualisieren aktivieren</value>
@@ -2140,7 +2140,13 @@ Das Scannen erfolgt automatisch.</value>
<value>Diese Organisation hat eine Unternehmensrichtlinie, die dich automatisch für die Passwortzurücksetzung registriert. Die Registrierung wird es Administratoren der Organisation erlauben, dein Master-Passwort zu ändern.</value> <value>Diese Organisation hat eine Unternehmensrichtlinie, die dich automatisch für die Passwortzurücksetzung registriert. Die Registrierung wird es Administratoren der Organisation erlauben, dein Master-Passwort zu ändern.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Deine Organisationsrichtlinien haben Auswirkungen auf dein Tresor-Timeout. Das maximal zulässige Tresor-Timeout beträgt {0} Stunde(n) und {1} Minute(n)</value> <value>Deine Unternehmensrichtlinien haben das maximal zulässige Tresor-Timeout auf {0} Stunde(n) und {1} Minute(n) festgelegt.</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Deine Organisationsrichtlinien beeinflussen dein Tresor-Timeout. Das maximal zulässige Tresor-Timeout beträgt {0} Stunde(n) und {1} Minute(n). Deine Tresor-Timeout-Aktion ist auf {2} gesetzt.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Deine Organisationsrichtlinien haben deine Tresor-Timeout-Aktion auf {0} gesetzt.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Dein Tresor-Timeout überschreitet die von deinem Unternehmen festgelegten Beschränkungen.</value> <value>Dein Tresor-Timeout überschreitet die von deinem Unternehmen festgelegten Beschränkungen.</value>
@@ -2602,4 +2608,10 @@ Möchtest du zu diesem Konto wechseln?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Es gibt keine Einträge, die mit der Suche übereinstimmen</value> <value>Es gibt keine Einträge, die mit der Suche übereinstimmen</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Dein Master-Passwort entspricht nicht einer oder mehreren Richtlinien deiner Organisation. Um auf den Tresor zugreifen zu können, musst du dein Master-Passwort jetzt aktualisieren. Wenn du fortfährst, wirst du von deiner aktuellen Sitzung abgemeldet und musst dich erneut anmelden. Aktive Sitzungen auf anderen Geräten können noch bis zu einer Stunde lang aktiv bleiben.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Aktuelles Master-Passwort</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@
<value>Θέλετε πραγματικά να στείλετε στον κάδο απορριμμάτων;</value> <value>Θέλετε πραγματικά να στείλετε στον κάδο απορριμμάτων;</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Εντοπίστηκε βιομετρική αλλαγή, συνδεθείτε χρησιμοποιώντας τον κύριο κωδικό πρόσβασης για ενεργοποίηση ξανά.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Το βιομετρικό ξεκλείδωμα για αυτόματη συμπλήρωση απενεργοποιήθηκε εν αναμονή της επαλήθευσης του κύριου κωδικού πρόσβασης.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Ενεργοποίηση συγχρονισμού κατά την ανανέωση</value> <value>Ενεργοποίηση συγχρονισμού κατά την ανανέωση</value>
@@ -2142,6 +2142,12 @@
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Οι πολιτικές του οργανισμού σας επηρεάζουν το χρονικό όριο vault σας. Το μέγιστο επιτρεπόμενο Χρονικό όριο Vault είναι {0} ώρα(ες) και {1} λεπτό(ά)</value> <value>Οι πολιτικές του οργανισμού σας επηρεάζουν το χρονικό όριο vault σας. Το μέγιστο επιτρεπόμενο Χρονικό όριο Vault είναι {0} ώρα(ες) και {1} λεπτό(ά)</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Το χρονικό όριο του vault σας υπερβαίνει τους περιορισμούς που έχει ορίσει ο οργανισμός σας.</value> <value>Το χρονικό όριο του vault σας υπερβαίνει τους περιορισμούς που έχει ορίσει ο οργανισμός σας.</value>
</data> </data>
@@ -2603,4 +2609,10 @@
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Δεν υπάρχουν στοιχεία που να ταιριάζουν με την αναζήτηση</value> <value>Δεν υπάρχουν στοιχεία που να ταιριάζουν με την αναζήτηση</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>Do you really want to send to the bin?</value> <value>Do you really want to send to the bin?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Allow sync on refresh</value> <value>Allow sync on refresh</value>
@@ -2142,6 +2142,12 @@ Scanning will happen automatically.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organisation policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organisation policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organisation.</value> <value>Your vault timeout exceeds the restrictions set by your organisation.</value>
</data> </data>
@@ -2603,4 +2609,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>Do you really want to send to the bin?</value> <value>Do you really want to send to the bin?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric change detected, login using master password to enable again.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Enable sync on refresh</value> <value>Enable sync on refresh</value>
@@ -2156,6 +2156,12 @@ Scanning will happen automatically.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
</data> </data>
@@ -2617,4 +2623,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ El escaneo se realizará automáticamente.</value>
<value>¿Seguro que quieres enviarlo a la papelera?</value> <value>¿Seguro que quieres enviarlo a la papelera?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Se ha detectado un cambio biométrico, inicie sesión usando la contraseña maestra para volver a activarlo.</value> <value>El desbloqueo biométrico para esta cuenta está deshabilitado hasta que se verifique la contraseña maestra.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Desbloqueo biométrico para autorrellenar desactivado hasta la verificación de la contraseña maestra.</value> <value>El desbloqueo biométrico para autorrelleno de esta cuenta está deshabilitado hasta que realice la verificación de la contraseña maestra.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Habilitar sincronización al actualizar</value> <value>Habilitar sincronización al actualizar</value>
@@ -2142,6 +2142,12 @@ El escaneo se realizará automáticamente.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Las políticas de su organización están afectando el tiempo de espera de tu caja fuerte. El máximo permitido de tiempo de espera es {0} hora(s) y {1} minuto(s)</value> <value>Las políticas de su organización están afectando el tiempo de espera de tu caja fuerte. El máximo permitido de tiempo de espera es {0} hora(s) y {1} minuto(s)</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Las políticas de tu organización están afectando el tiempo de espera de tu caja fuerte. El tiempo máximo permitido para la bóveda es de {0} hora(s) y de {1} minuto(s). Su acción de tiempo de espera de la bóveda se ha establecido en {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Las políticas de su organización han establecido la acción de tiempo de espera de su caja fuerte a {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>El tiempo de espera de tu caja fuerte excede las restricciones establecidas por tu organización.</value> <value>El tiempo de espera de tu caja fuerte excede las restricciones establecidas por tu organización.</value>
</data> </data>
@@ -2604,4 +2610,10 @@ seleccione Agregar TOTP para almacenar la clave de forma segura</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>No hay elementos que coincidan con la búsqueda</value> <value>No hay elementos que coincidan con la búsqueda</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Su contraseña maestra no cumple con una o más de las políticas de su organización. Para acceder a la caja fuerte, debe actualizar su contraseña maestra ahora. Proceder le desconectará de su sesión actual, requiriendo que vuelva a iniciar sesión. Las sesiones activas en otros dispositivos pueden seguir estando activas durante hasta una hora.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Contraseña maestra actual</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Skaneerimine toimub automaatselt.</value>
<value>Oled kindel, et soovid kirje(d) prügikasti teisaldada?</value> <value>Oled kindel, et soovid kirje(d) prügikasti teisaldada?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Automaattäite kinnitamine läbi biomeetria on keelatud. Oodatakse ülemparooli sisestamist.</value> <value>Biomeetriaga lahtilukustamine on keelatud. Oodatakse ülemparooli sisestamist.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Automaattäite kinnitamine läbi biomeetria on keelatud. Oodatakse ülemparooli sisestamist.</value> <value>Automaattäite ja biomeetrilise avamise kasutamine on keelatud. Oodatakse ülemprooli sisestamist.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Luba allatõmbel sünkroniseerimine</value> <value>Luba allatõmbel sünkroniseerimine</value>
@@ -2140,7 +2140,13 @@ Skaneerimine toimub automaatselt.</value>
<value>Selle organisatsiooni poliitika kohaselt liidetakse sind automaatselt ülemparooli lähtestamise funktsiooniga. Liitumisel saavad organisatsiooni administraatorid sinu ülemparooli muuta.</value> <value>Selle organisatsiooni poliitika kohaselt liidetakse sind automaatselt ülemparooli lähtestamise funktsiooniga. Liitumisel saavad organisatsiooni administraatorid sinu ülemparooli muuta.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Organisatsiooni poliitikad mõjutavad sinu hoidla ajalõppu. Maksimaalne lubatud hoidla ajalõpp on {0} tund(i) ja {1} minut(it)</value> <value>Organisatsiooni poliitikad mõjutavad sinu hoidla ajalõppu. Maksimaalne lubatud hoidla ajalõpp on {0} tund(i) ja {1} minut(it).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Organisatsiooni poliitikad mõjutavad sinu hoidla ajalõppu. Maksimaalne lubatud hoidla ajalõpp on {0} tund(i) ja {1} minut(it). Sinu hoidla ajalõpu tegevus on {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Organisatsiooni poliitika on sinu hoidla ajalõpu tegevuse seadistanud {0} peale.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Valitud hoidla ajalõpp ei ole organisatsiooni poolt määratud reeglitega kooskõlas.</value> <value>Valitud hoidla ajalõpp ei ole organisatsiooni poolt määratud reeglitega kooskõlas.</value>
@@ -2603,4 +2609,10 @@ Soovid selle konto peale lülituda?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Otsingusõnale ei vasta kirjeid</value> <value>Otsingusõnale ei vasta kirjeid</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Sinu ülemparool ei vasta ühele või rohkemale organisatsiooni poolt seatud poliitikale. Hoidlale ligipääsemiseks pead oma ülemaprooli uuendama. Jätkamisel logitakse sind praegusest sessioonist välja, mistõttu pead uuesti sisse logima. Teistes seadmetes olevad aktiivsed sessioonid aeguvad umbes ühe tunni jooksul.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Praegune ülemparool</value>
</data>
</root> </root>

View File

@@ -1751,11 +1751,11 @@
<value>Ziur zaude elementu hau zakarrontzira bidali nahi duzula?</value> <value>Ziur zaude elementu hau zakarrontzira bidali nahi duzula?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Desblokeatze biometrikoa desgaituta dago, pasahitz nagusiarekin saioa hasi zain.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Auto-betetzerako desblokeatze biometrikoa desgaituta dago, pasahitz nagusiarekin saioa hasi zain.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Gaitu eguneratzean sinkronizatzea</value> <value>Gaitu eguneratzean sinkronizatzea</value>
@@ -2142,6 +2142,12 @@
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Zure erakundearen politikek zure itxaronaldiari eragiten diote. Itxaronaldiak gehienez ere {0} ordu eta {1} minutu izango ditu</value> <value>Zure erakundearen politikek zure itxaronaldiari eragiten diote. Itxaronaldiak gehienez ere {0} ordu eta {1} minutu izango ditu</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Zure kutxa gotorreko itxaronaldiak, zure erakundeak ezarritako murrizpenak gainditzen ditu.</value> <value>Zure kutxa gotorreko itxaronaldiak, zure erakundeak ezarritako murrizpenak gainditzen ditu.</value>
</data> </data>
@@ -2602,4 +2608,10 @@ Kontu honetara aldatu nahi duzu?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@
<value>واقعاً می‌خواهید این آیتم را به سطل زباله ارسال کنید؟</value> <value>واقعاً می‌خواهید این آیتم را به سطل زباله ارسال کنید؟</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>تغییر بیومتریک شناسایی شد، برای فعال کردن مجدد آن با استفاده از کلمه عبور اصلی وارد سیستم شوید.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>باز کردن قفل بیومتریک برای پرکردن خودکار در انتظار تأیید کلمه عبور اصلی غیرفعال است.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>فعال کردن همگام‌سازی در نوسازی</value> <value>فعال کردن همگام‌سازی در نوسازی</value>
@@ -2143,6 +2143,12 @@
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>سیاست‌های سازمانتان بر مهلت زمانی گاوصندوق شما تأثیر می‌گذارد. حداکثر زمان مجاز گاوصندوق {0} ساعت و {1} دقیقه است</value> <value>سیاست‌های سازمانتان بر مهلت زمانی گاوصندوق شما تأثیر می‌گذارد. حداکثر زمان مجاز گاوصندوق {0} ساعت و {1} دقیقه است</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>مهلت زمانی شما بیش از محدودیت های تعیین شده توسط سازمانتان است.</value> <value>مهلت زمانی شما بیش از محدودیت های تعیین شده توسط سازمانتان است.</value>
</data> </data>
@@ -2604,4 +2610,10 @@
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>هیچ موردی وجود ندارد که با جستجو مطابقت داشته باشد</value> <value>هیچ موردی وجود ندارد که با جستجو مطابقت داشته باشد</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1281,7 +1281,7 @@ Koodi luetaan automaattisesti.</value>
<value>Esteettömyyspalvelu voi olla hyödyllinen sellaisten sovellusten kanssa, jotka eivät tue tavallista automaattisen täytön palvelua.</value> <value>Esteettömyyspalvelu voi olla hyödyllinen sellaisten sovellusten kanssa, jotka eivät tue tavallista automaattisen täytön palvelua.</value>
</data> </data>
<data name="DatePasswordUpdated" xml:space="preserve"> <data name="DatePasswordUpdated" xml:space="preserve">
<value>Salasana päivitettiin</value> <value>Salasana vaihdettiin</value>
<comment>ex. Date this password was updated</comment> <comment>ex. Date this password was updated</comment>
</data> </data>
<data name="DateUpdated" xml:space="preserve"> <data name="DateUpdated" xml:space="preserve">
@@ -1752,11 +1752,11 @@ Koodi luetaan automaattisesti.</value>
<value>Haluatko varmasti siirtää roskakoriin?</value> <value>Haluatko varmasti siirtää roskakoriin?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometrinen avaus on poistettu käytöstä, kunnes pääsalasana on vahvistettu.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Automaattisen täytön biometrinen avaus on poistettu käytöstä, kunnes pääsalasana on vahvistettu.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Synkronoi holvi päivityksen yhteydessä</value> <value>Synkronoi holvi päivityksen yhteydessä</value>
@@ -2090,13 +2090,13 @@ Koodi luetaan automaattisesti.</value>
<value>Captcha-vahvistus epäonnistui. Yritä uudelleen.</value> <value>Captcha-vahvistus epäonnistui. Yritä uudelleen.</value>
</data> </data>
<data name="UpdatedMasterPassword" xml:space="preserve"> <data name="UpdatedMasterPassword" xml:space="preserve">
<value>Pääsalasana päivitettiin</value> <value>Pääsalasanasi on vaihdettu</value>
</data> </data>
<data name="UpdateMasterPassword" xml:space="preserve"> <data name="UpdateMasterPassword" xml:space="preserve">
<value>Vaihda pääsalasana</value> <value>Päivitä pääsalasana</value>
</data> </data>
<data name="UpdateMasterPasswordWarning" xml:space="preserve"> <data name="UpdateMasterPasswordWarning" xml:space="preserve">
<value>Organisaatiosi ylläpito on hiljattain vaihtanut pääsalasanasi. Käyttääksesi holvia sinun on päivitettävä pääsalasanasi nyt. Tämä uloskirjaa kaikki nykyiset istunnot pakottaen uudelleenkirjautumisen. Muiden laitteiden aktiiviset istunnot saattavat toimia vielä tunnin ajan.</value> <value>Organisaatiosi ylläpito on hiljattain vaihtanut pääsalasanasi ja käyttääksesi holvia sinun on päivitettävä se nyt. Tämä uloskirjaa kaikki nykyiset istunnot pakottaen uudelleenkirjautumisen. Muiden laitteiden aktiiviset istunnot saattavat toimia vielä tunnin ajan.</value>
</data> </data>
<data name="UpdatingPassword" xml:space="preserve"> <data name="UpdatingPassword" xml:space="preserve">
<value>Salasanaa vaihdetaan</value> <value>Salasanaa vaihdetaan</value>
@@ -2141,7 +2141,13 @@ Koodi luetaan automaattisesti.</value>
<value>Organisaatiolla on käytäntö, joka liittää tilisi automaattisesti salasanan palautusapuun. Liitos sallii organisaation ylläpitäjien vaihtaa pääsalasanasi.</value> <value>Organisaatiolla on käytäntö, joka liittää tilisi automaattisesti salasanan palautusapuun. Liitos sallii organisaation ylläpitäjien vaihtaa pääsalasanasi.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Organisaatiokäytännöt vaikuttavat holvisi aikakatkaisuun. Suurin sallittu aika on {0} tunti(a) ja {1} minuutti(a).</value> <value>Organisaatiokäytännöt ovat määrittäneet holvisi aikakatkaisun enimmäisajaksi {0} tunti(a) {1} minuutti(a).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Organisaatiokäytännöt vaikuttavat holvisi aikakatkaisuun. Suurin sallittu aika on {0} tunti(a) {1} minuutti(a). Holvillesi määritetty aikakatkaisutoiminto on {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Organisaatiokäytännöt ovat määrittäneet holville aikakatkaisutoiminnon {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Holvisi aikakatkaisu ylittää organisaatiosi asettamat rajoitukset.</value> <value>Holvisi aikakatkaisu ylittää organisaatiosi asettamat rajoitukset.</value>
@@ -2604,4 +2610,10 @@ Haluatko vaihtaa tähän tiliin?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Hakua vastaavia kohteita ei ole</value> <value>Hakua vastaavia kohteita ei ole</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Pääsalasanasi ei täytä yhden tai useamman organisaatiokäytännön vaatimuksia ja holvin käyttämiseksi sinun on vaihdettava se nyt. Tämä uloskirjaa kaikki nykyiset istunnot pakottaen uudelleenkirjautumisen. Muiden laitteiden aktiiviset istunnot saattavat toimia vielä tunnin ajan.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Nykyinen pääsalasana</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Awtomatikong itong magsa-scan.</value>
<value>Gusto mo ba talaga itong itapon?</value> <value>Gusto mo ba talaga itong itapon?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Na-disable ang biometrikong pag-unlock, naghihintay para sa beripikasyon ng master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Na-disable ang biometrikong pag-unlock para sa autofill, naghihintay para sa beripikasyon ng master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Payagan ang pag-sync pagka-refresh</value> <value>Payagan ang pag-sync pagka-refresh</value>
@@ -2143,6 +2143,12 @@ Awtomatikong itong magsa-scan.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Naaapektuhan ng mga patakaran sa organisasyon mo ang time-out ng vault mo. {0} oras at {1} minuto ang pinakamataas na pinapayagang time-out ng vault.</value> <value>Naaapektuhan ng mga patakaran sa organisasyon mo ang time-out ng vault mo. {0} oras at {1} minuto ang pinakamataas na pinapayagang time-out ng vault.</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Lumagpas ang time-out ng vault mo sa mga restriksyong ipinapatupad ng organisasyon mo.</value> <value>Lumagpas ang time-out ng vault mo sa mga restriksyong ipinapatupad ng organisasyon mo.</value>
</data> </data>
@@ -2604,4 +2610,10 @@ Gusto mo bang pumunta sa account na ito?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Walang mga item na tumutugma sa paghahanap</value> <value>Walang mga item na tumutugma sa paghahanap</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ La numérisation se fera automatiquement.</value>
<value>Voulez-vous vraiment envoyer à la corbeille ?</value> <value>Voulez-vous vraiment envoyer à la corbeille ?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Déverrouillage biométrique désactivé dans l'attente de vérification du mot de passe principal.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Déverrouillage biométrique pour la saisie automatique désactivé dans l'attente de vérification du mot de passe principal.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Autoriser la synchronisation au rafraîchissement</value> <value>Autoriser la synchronisation au rafraîchissement</value>
@@ -2141,7 +2141,13 @@ La numérisation se fera automatiquement.</value>
<value>Cette organisation dispose d'une politique d'entreprise qui vous inscrira automatiquement à la réinitialisation du mot de passe. L'inscription permettra aux administrateurs de l'organisation de changer votre mot de passe principal.</value> <value>Cette organisation dispose d'une politique d'entreprise qui vous inscrira automatiquement à la réinitialisation du mot de passe. L'inscription permettra aux administrateurs de l'organisation de changer votre mot de passe principal.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Les politiques de sécurité de votre organisation affectent le délai d'expiration de votre coffre. Le délai d'expiration autorisé du coffre est de {0} heure(s) et {1} minute(s) maximum</value> <value>Les politiques de sécurité de votre organisation ont défini le délai d'expiration de votre coffre à {0} heure(s) et {1} minute(s) maximum.</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Les politiques de sécurité de votre organisation affectent le délai d'expiration de votre coffre. Le délai d'expiration autorisé du coffre est de {0} heure(s) et {1} minute(s) maximum. L'action après délai d'expiration de votre coffre est fixée à {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Les politiques de sécurité de votre organisation ont défini l'action après délai d'expiration de votre coffre à {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Le délai d'expiration de votre coffre dépasse les restrictions définies par votre organisation.</value> <value>Le délai d'expiration de votre coffre dépasse les restrictions définies par votre organisation.</value>
@@ -2604,4 +2610,10 @@ Voulez-vous basculer vers ce compte ?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Il n'y a pas d'éléments qui correspondent à la recherche</value> <value>Il n'y a pas d'éléments qui correspondent à la recherche</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Votre mot de passe principal ne répond pas aux exigences de politique de sécurité de cette organisation. Pour accéder au coffre, vous devez mettre à jour votre mot de passe principal dès maintenant. En poursuivant, vous serez déconnecté de votre session actuelle et vous devrez vous reconnecter. Les sessions actives sur d'autres appareils peuver rester actives pendant encore une heure.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Mot de passe principal actuel</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>Do you really want to send to the trash?</value> <value>Do you really want to send to the trash?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Allow sync on refresh</value> <value>Allow sync on refresh</value>
@@ -2141,7 +2141,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2604,4 +2610,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1754,11 +1754,11 @@ Scanning will happen automatically.</value>
<value>האם אתה בטוח שברצונך לשלוח פריט זה לסל המחזור?</value> <value>האם אתה בטוח שברצונך לשלוח פריט זה לסל המחזור?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>פתיחה באמצעות זיהוי ביומטרי ממתינה לאימות הסיסמה הראשית.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>פתיחה באמצעים ביומטריים עבור השלמה אוטומטית - מצריכה אימות בעזרת סיסמה ראשית.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>אפשר סנכרון בעת רענון</value> <value>אפשר סנכרון בעת רענון</value>
@@ -2145,6 +2145,12 @@ Scanning will happen automatically.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>מדיניות הארגון שלך משפיעה על הזמן הקצוב לכספת שלך. הזמן הקצוב המרבי המותר לכספת הוא {0} שעות ו-{1} דקות</value> <value>מדיניות הארגון שלך משפיעה על הזמן הקצוב לכספת שלך. הזמן הקצוב המרבי המותר לכספת הוא {0} שעות ו-{1} דקות</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>הזמן הקצוב לכספת שלך חורג מהמגבלות שנקבעו על ידי הארגון שלך.</value> <value>הזמן הקצוב לכספת שלך חורג מהמגבלות שנקבעו על ידי הארגון שלך.</value>
</data> </data>
@@ -2606,4 +2612,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -125,14 +125,14 @@
<comment>Add/create a new entity (verb).</comment> <comment>Add/create a new entity (verb).</comment>
</data> </data>
<data name="AddFolder" xml:space="preserve"> <data name="AddFolder" xml:space="preserve">
<value>नया फोल्डर जोड़ें</value> <value>नया फोल्डर जोड़ें</value>
</data> </data>
<data name="AddItem" xml:space="preserve"> <data name="AddItem" xml:space="preserve">
<value>आइटम जोड़ें</value> <value>चीज़ जोड़ें</value>
<comment>The title for the add item page.</comment> <comment>The title for the add item page.</comment>
</data> </data>
<data name="AnErrorHasOccurred" xml:space="preserve"> <data name="AnErrorHasOccurred" xml:space="preserve">
<value>एक त्रुटि हुई।</value> <value>एक गड़बड़ हुई।</value>
<comment>Alert title when something goes wrong.</comment> <comment>Alert title when something goes wrong.</comment>
</data> </data>
<data name="Back" xml:space="preserve"> <data name="Back" xml:space="preserve">
@@ -1753,11 +1753,11 @@ Scanning will happen automatically.</value>
<value>Do you really want to send to the trash?</value> <value>Do you really want to send to the trash?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Allow sync on refresh</value> <value>Allow sync on refresh</value>
@@ -2142,7 +2142,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2605,4 +2611,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1751,11 +1751,11 @@
<value>Želite li zaista poslati u smeće?</value> <value>Želite li zaista poslati u smeće?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometrijsko otključavanje onemogućeno do potvrde glavne lozinke.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometrijsko otključavanje za auto-ispunu onemogućeno do potvrde glavne lozinke.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Uključi sinkronizaciju pri osvježavanju</value> <value>Uključi sinkronizaciju pri osvježavanju</value>
@@ -2141,6 +2141,12 @@
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Pravilo tvoje organizacije utječe na istek trezora. Najveće dozvoljeno vrijeme isteka je {0}:{1} h.</value> <value>Pravilo tvoje organizacije utječe na istek trezora. Najveće dozvoljeno vrijeme isteka je {0}:{1} h.</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Vrijeme isteka premašuje ograničenje koje je postavila tvoja organizacija.</value> <value>Vrijeme isteka premašuje ograničenje koje je postavila tvoja organizacija.</value>
</data> </data>
@@ -2601,4 +2607,10 @@
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Nema stavki koje odgovaraju pretrazi</value> <value>Nema stavki koje odgovaraju pretrazi</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1751,11 +1751,11 @@
<value>Biztosan a lomtárba kerüljön?</value> <value>Biztosan a lomtárba kerüljön?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometrikus változás lett észlelve, bejelentkezés mesterjelszóval az ismételt engedélyezéshez.</value> <value>A biometrikus feloldás ennél a fióknál letiltásra került a mesterjelszó ellenőrzéséig.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Az automatikus kitöltés biometrikus feloldása letiltásra került a jelszó ellenőrzéséig.</value> <value>Az automatikus kitöltés biometrikus feloldása ennél a fióknál letiltásra került a mesterjelszó ellenőrzéséig.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Szinkronizálás engedélyezése frissítéskor</value> <value>Szinkronizálás engedélyezése frissítéskor</value>
@@ -2141,6 +2141,12 @@
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>A szervezeti házirendek hatással vannak a széf időkorlátjára. A széf időkorlátja legfeljebb {0} óra és {1} perc lehet.</value> <value>A szervezeti házirendek hatással vannak a széf időkorlátjára. A széf időkorlátja legfeljebb {0} óra és {1} perc lehet.</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>A szervezeti házirendek hatással vannak a széf időkorlátjára. A széf időkorlátja legfeljebb {0} óra és {1} perc lehet. A széf időkifutási művelete {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>A szervezeti házirendek által jelenleg beállított időkifutási művelet {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>A széf időkorlátja túllépi a szervezet által beállított korlátozást.</value> <value>A széf időkorlátja túllépi a szervezet által beállított korlátozást.</value>
</data> </data>
@@ -2602,4 +2608,10 @@ Szeretnénk átváltani erre a fiókra?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Nincsenek a keresésnek megfelelő elemek.</value> <value>Nincsenek a keresésnek megfelelő elemek.</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>A mesterjelszó nem felel meg egy vagy több szervezeti szabályzatnak. A széf eléréséhez frissíteni kell a meszerjelszót. A továbblépés kijelentkeztet az aktuális munkamenetből és újra be kell jelentkezni. A többi eszközön lévő aktív munkamenetek akár egy óráig is aktívak maradhatnak.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Jelenlegi mesterjelszó</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Proses pindai akan terjadi secara otomatis.</value>
<value>Yakin ingin mengirim ke sampah?</value> <value>Yakin ingin mengirim ke sampah?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Perubahan biometrik terdeteksi, login menggunakan Master Password untuk mengaktifkan kembali.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Buka kunci biometrik untuk pengisian otomatis dinonaktifkan sambil menunggu verifikasi kata sandi utama.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Aktifkan sinkronisasi saat refresh</value> <value>Aktifkan sinkronisasi saat refresh</value>
@@ -2142,6 +2142,12 @@ Proses pindai akan terjadi secara otomatis.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Kebijakan organisasi Anda memengaruhi waktu tunggu brankas Anda. Batas maksimal Waktu Tunggu Brankas yang diizinkan adalah {0} jam dan {1} menit</value> <value>Kebijakan organisasi Anda memengaruhi waktu tunggu brankas Anda. Batas maksimal Waktu Tunggu Brankas yang diizinkan adalah {0} jam dan {1} menit</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
</data> </data>
@@ -2603,4 +2609,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -419,7 +419,7 @@
<value>Estensione app</value> <value>Estensione app</value>
</data> </data>
<data name="AutofillAccessibilityDescription" xml:space="preserve"> <data name="AutofillAccessibilityDescription" xml:space="preserve">
<value>Usa il servizio di accessibilità di Bitwarden per l'auto-completamento dei tuoi login su app e web.</value> <value>Usa il servizio di accessibilità di Bitwarden per il riempimento automatico dei tuoi login su app e web.</value>
</data> </data>
<data name="AutofillService" xml:space="preserve"> <data name="AutofillService" xml:space="preserve">
<value>Servizio di riempimento automatico</value> <value>Servizio di riempimento automatico</value>
@@ -434,13 +434,13 @@
<value>Il modo più semplice per aggiungere nuovi login alla tua cassaforte è usare l'estensione di riempimento automatico di Bitwarden. Scopri di più su come usare l'estensione di riempimento automatico di Bitwarden nelle impostazioni.</value> <value>Il modo più semplice per aggiungere nuovi login alla tua cassaforte è usare l'estensione di riempimento automatico di Bitwarden. Scopri di più su come usare l'estensione di riempimento automatico di Bitwarden nelle impostazioni.</value>
</data> </data>
<data name="BitwardenAppExtensionDescription" xml:space="preserve"> <data name="BitwardenAppExtensionDescription" xml:space="preserve">
<value>Usa Bitwarden su Safari e altre applicazioni per auto-completare i tuoi login.</value> <value>Usa Bitwarden su Safari e altre app per riempire automaticamente i tuoi login.</value>
</data> </data>
<data name="BitwardenAutofillService" xml:space="preserve"> <data name="BitwardenAutofillService" xml:space="preserve">
<value>Servizio auto-completamento di Bitwarden</value> <value>Servizio di riempimento automatico di Bitwarden</value>
</data> </data>
<data name="BitwardenAutofillAccessibilityServiceDescription" xml:space="preserve"> <data name="BitwardenAutofillAccessibilityServiceDescription" xml:space="preserve">
<value>Usa il servizio di accessibilità Bitwarden per auto-completare i tuoi login.</value> <value>Usa il servizio di accessibilità Bitwarden per riempire automaticamente i tuoi login.</value>
</data> </data>
<data name="ChangeEmail" xml:space="preserve"> <data name="ChangeEmail" xml:space="preserve">
<value>Cambia email</value> <value>Cambia email</value>
@@ -483,7 +483,7 @@
<value>Quasi fatto!</value> <value>Quasi fatto!</value>
</data> </data>
<data name="ExtensionEnable" xml:space="preserve"> <data name="ExtensionEnable" xml:space="preserve">
<value>Abilita l'estensione dell'applicazione</value> <value>Abilita l'estensione dell'app</value>
</data> </data>
<data name="ExtensionInSafari" xml:space="preserve"> <data name="ExtensionInSafari" xml:space="preserve">
<value>Su Safari, trova Bitwarden utilizzando l'icona di condivisione (scorri a destra sulla riga inferiore del menu).</value> <value>Su Safari, trova Bitwarden utilizzando l'icona di condivisione (scorri a destra sulla riga inferiore del menu).</value>
@@ -496,7 +496,7 @@
<value>Sei pronto ad accedere!</value> <value>Sei pronto ad accedere!</value>
</data> </data>
<data name="ExtensionSetup" xml:space="preserve"> <data name="ExtensionSetup" xml:space="preserve">
<value>I tuoi login sono ora facilmente accessibili da Safari, Chrome e altre applicazioni supportate.</value> <value>I tuoi login sono ora facilmente accessibili da Safari, Chrome e altre app supportate.</value>
</data> </data>
<data name="ExtensionSetup2" xml:space="preserve"> <data name="ExtensionSetup2" xml:space="preserve">
<value>In Safari e Chrome, trova Bitwarden utilizzando l'icona di condivisione (scorri a destra sulla riga in basso del menu Condividi).</value> <value>In Safari e Chrome, trova Bitwarden utilizzando l'icona di condivisione (scorri a destra sulla riga in basso del menu Condividi).</value>
@@ -505,7 +505,7 @@
<value>Clicca l'icona di Bitwarden nel menu per avviare l'estensione.</value> <value>Clicca l'icona di Bitwarden nel menu per avviare l'estensione.</value>
</data> </data>
<data name="ExtensionTurnOn" xml:space="preserve"> <data name="ExtensionTurnOn" xml:space="preserve">
<value>Per attivare Bitwarden su Safari e altre applicazioni, tocca l'icona "altro" sull'ultima riga del menu.</value> <value>Per attivare Bitwarden su Safari e altre app, clicca l'icona "altro" sull'ultima riga del menu.</value>
</data> </data>
<data name="Favorite" xml:space="preserve"> <data name="Favorite" xml:space="preserve">
<value>Preferito</value> <value>Preferito</value>
@@ -598,7 +598,7 @@
<value>Altre impostazioni</value> <value>Altre impostazioni</value>
</data> </data>
<data name="MustLogInMainApp" xml:space="preserve"> <data name="MustLogInMainApp" xml:space="preserve">
<value>È necessario accedere all'applicazione principale di Bitwarden prima di poter utilizzare l'estensione.</value> <value>È necessario accedere all'app principale di Bitwarden prima di poter utilizzare l'estensione.</value>
</data> </data>
<data name="Never" xml:space="preserve"> <data name="Never" xml:space="preserve">
<value>Mai</value> <value>Mai</value>
@@ -623,7 +623,7 @@
<comment>Confirmation, like "Ok, I understand it"</comment> <comment>Confirmation, like "Ok, I understand it"</comment>
</data> </data>
<data name="OptionDefaults" xml:space="preserve"> <data name="OptionDefaults" xml:space="preserve">
<value>Le opzioni predefinite sono impostate dal generatore di password dell'applicazione principale Bitwarden.</value> <value>Le opzioni predefinite sono impostate dal generatore di password dell'app principale Bitwarden.</value>
</data> </data>
<data name="Options" xml:space="preserve"> <data name="Options" xml:space="preserve">
<value>Opzioni</value> <value>Opzioni</value>
@@ -660,7 +660,7 @@
<value>Rigenera password</value> <value>Rigenera password</value>
</data> </data>
<data name="RetypeMasterPassword" xml:space="preserve"> <data name="RetypeMasterPassword" xml:space="preserve">
<value>Digita nuovamente la password</value> <value>Inserisci password principale di nuovo</value>
</data> </data>
<data name="SearchVault" xml:space="preserve"> <data name="SearchVault" xml:space="preserve">
<value>Cerca nella cassaforte</value> <value>Cerca nella cassaforte</value>
@@ -708,7 +708,7 @@
<value>Verifica in due passaggi</value> <value>Verifica in due passaggi</value>
</data> </data>
<data name="TwoStepLoginConfirmation" xml:space="preserve"> <data name="TwoStepLoginConfirmation" xml:space="preserve">
<value>La verifica in due passaggi rende il tuo account più sicuro richiedendoti di verificare il tuo login usando un altro dispositivo come una chiave di sicurezza, applicazione di autenticazione, SMS, telefonata, o email. Può essere abilitata nella cassaforte web su bitwarden.com. Vuoi visitare il sito?</value> <value>La verifica in due passaggi rende il tuo account più sicuro richiedendoti di verificare il tuo login usando un altro dispositivo come una chiave di sicurezza, app di autenticazione, SMS, telefonata, o email. Può essere abilitata nella cassaforte web su bitwarden.com. Vuoi visitare il sito?</value>
</data> </data>
<data name="UnlockWith" xml:space="preserve"> <data name="UnlockWith" xml:space="preserve">
<value>Sblocca con {0}</value> <value>Sblocca con {0}</value>
@@ -815,11 +815,11 @@
<comment>Message shown when trying to launch an app that does not exist on the user's device.</comment> <comment>Message shown when trying to launch an app that does not exist on the user's device.</comment>
</data> </data>
<data name="AuthenticatorAppTitle" xml:space="preserve"> <data name="AuthenticatorAppTitle" xml:space="preserve">
<value>Applicazione di autenticazione</value> <value>App di autenticazione</value>
<comment>For 2FA</comment> <comment>For 2FA</comment>
</data> </data>
<data name="EnterVerificationCodeApp" xml:space="preserve"> <data name="EnterVerificationCodeApp" xml:space="preserve">
<value>Digita il codice di verifica a 6 cifre dalla tua applicazione di autenticazione.</value> <value>Inserisci il codice di verifica a 6 cifre dalla tua app di autenticazione.</value>
<comment>For 2FA</comment> <comment>For 2FA</comment>
</data> </data>
<data name="EnterVerificationCodeEmail" xml:space="preserve"> <data name="EnterVerificationCodeEmail" xml:space="preserve">
@@ -842,7 +842,7 @@
<comment>Remember my two-step login</comment> <comment>Remember my two-step login</comment>
</data> </data>
<data name="SendVerificationCodeAgain" xml:space="preserve"> <data name="SendVerificationCodeAgain" xml:space="preserve">
<value>Invia nuovamente l'email con il codice di verifica</value> <value>Invia email con codice di verifica di nuovo</value>
<comment>For 2FA</comment> <comment>For 2FA</comment>
</data> </data>
<data name="TwoStepLoginOptions" xml:space="preserve"> <data name="TwoStepLoginOptions" xml:space="preserve">
@@ -1052,7 +1052,7 @@
<value>Dicembre</value> <value>Dicembre</value>
</data> </data>
<data name="Dr" xml:space="preserve"> <data name="Dr" xml:space="preserve">
<value>Dott.</value> <value>Dott</value>
</data> </data>
<data name="ExpirationMonth" xml:space="preserve"> <data name="ExpirationMonth" xml:space="preserve">
<value>Mese di scadenza</value> <value>Mese di scadenza</value>
@@ -1094,7 +1094,7 @@
<value>Secondo nome</value> <value>Secondo nome</value>
</data> </data>
<data name="Mr" xml:space="preserve"> <data name="Mr" xml:space="preserve">
<value>Sig.</value> <value>Sig</value>
</data> </data>
<data name="Mrs" xml:space="preserve"> <data name="Mrs" xml:space="preserve">
<value>Sig.ra</value> <value>Sig.ra</value>
@@ -1294,7 +1294,7 @@
<value>Devi accedere all'app principale di Bitwarden per usare il riempimento automatico.</value> <value>Devi accedere all'app principale di Bitwarden per usare il riempimento automatico.</value>
</data> </data>
<data name="AutofillSetup" xml:space="preserve"> <data name="AutofillSetup" xml:space="preserve">
<value>I tuoi login sono ora facilmente accessibili dalla tastiera durante l'accesso a siti web e app.</value> <value>I tuoi login sono ora facilmente accessibili dalla tastiera mentre accedi a siti web e app.</value>
</data> </data>
<data name="AutofillSetup2" xml:space="preserve"> <data name="AutofillSetup2" xml:space="preserve">
<value>Ti consigliamo di disabilitare qualsiasi altra app di riempimento automatico nelle impostazioni se non prevedi di usarle.</value> <value>Ti consigliamo di disabilitare qualsiasi altra app di riempimento automatico nelle impostazioni se non prevedi di usarle.</value>
@@ -1359,7 +1359,7 @@
<value>Questa password è stata trovata {0} volta(e) in archivi di dati trafugati. Dovresti cambiarla.</value> <value>Questa password è stata trovata {0} volta(e) in archivi di dati trafugati. Dovresti cambiarla.</value>
</data> </data>
<data name="PasswordSafe" xml:space="preserve"> <data name="PasswordSafe" xml:space="preserve">
<value>Questa password non è stata trovata in dati violati noti. Dovrebbe essere sicura da usare.</value> <value>Questa password non è stata trovata in violazioni di dati note. Dovrebbe essere sicura da usare.</value>
</data> </data>
<data name="IdentityName" xml:space="preserve"> <data name="IdentityName" xml:space="preserve">
<value>Nome dell'identità</value> <value>Nome dell'identità</value>
@@ -1436,7 +1436,7 @@
<value>Nessuna organizzazione da mostrare.</value> <value>Nessuna organizzazione da mostrare.</value>
</data> </data>
<data name="MoveToOrgDesc" xml:space="preserve"> <data name="MoveToOrgDesc" xml:space="preserve">
<value>Scegli un'organizzazione in cui vuoi spostare questo elemento. Spostarlo in un'organizzazione trasferisce la proprietà dell'elemento all'organizzazione. Una volta spostato non sarai più il proprietario diretto di questo elemento.</value> <value>Scegli un'organizzazione in cui vuoi spostare questo elemento. Spostarlo in un'organizzazione trasferisce la proprietà dell'elemento all'organizzazione. Una volta spostato, non sarai più il proprietario diretto di questo elemento.</value>
</data> </data>
<data name="NumberOfWords" xml:space="preserve"> <data name="NumberOfWords" xml:space="preserve">
<value>Numero di parole</value> <value>Numero di parole</value>
@@ -1539,14 +1539,14 @@
<comment>Default URI match detection for auto-fill.</comment> <comment>Default URI match detection for auto-fill.</comment>
</data> </data>
<data name="DefaultUriMatchDetectionDescription" xml:space="preserve"> <data name="DefaultUriMatchDetectionDescription" xml:space="preserve">
<value>Scegli il modo predefinito in cui il rilevamento della corrispondenza URI viene gestito per i login quando si eseguono azioni come il riempimento automatico.</value> <value>Scegli il modo predefinito in cui il rilevamento della corrispondenza URI è gestito per i login quando si eseguono azioni come il riempimento automatico.</value>
</data> </data>
<data name="Theme" xml:space="preserve"> <data name="Theme" xml:space="preserve">
<value>Tema</value> <value>Tema</value>
<comment>Color theme</comment> <comment>Color theme</comment>
</data> </data>
<data name="ThemeDescription" xml:space="preserve"> <data name="ThemeDescription" xml:space="preserve">
<value>Cambia il tema dell'applicazione.</value> <value>Cambia il tema dell'app.</value>
</data> </data>
<data name="ThemeDefault" xml:space="preserve"> <data name="ThemeDefault" xml:space="preserve">
<value>Predefinito (Sistema)</value> <value>Predefinito (Sistema)</value>
@@ -1567,7 +1567,7 @@
<value>Sei sicuro di voler uscire da Bitwarden?</value> <value>Sei sicuro di voler uscire da Bitwarden?</value>
</data> </data>
<data name="PINRequireMasterPasswordRestart" xml:space="preserve"> <data name="PINRequireMasterPasswordRestart" xml:space="preserve">
<value>Vuoi richiedere lo sblocco con la password principale quando l'applicazione viene riavviata?</value> <value>Vuoi richiedere lo sblocco con la password principale quando l'app è riavviata?</value>
</data> </data>
<data name="Black" xml:space="preserve"> <data name="Black" xml:space="preserve">
<value>Nero</value> <value>Nero</value>
@@ -1667,10 +1667,10 @@
<value>Conferma la tua identità per continuare.</value> <value>Conferma la tua identità per continuare.</value>
</data> </data>
<data name="ExportVaultWarning" xml:space="preserve"> <data name="ExportVaultWarning" xml:space="preserve">
<value>Questa esportazione contiene i dati della tua cassaforte in formato non criptato. Non archiviare o inviare il file di esportazione attraverso canali non sicuri (come email). Eliminalo immediatamente dopo che hai finito di usarli.</value> <value>Questa esportazione contiene i dati della tua cassaforte in un formato non criptato. Non salvare o inviare il file esportato attraverso canali non protetti (come le email). Eliminalo immediatamente dopo l'utilizzo.</value>
</data> </data>
<data name="EncExportKeyWarning" xml:space="preserve"> <data name="EncExportKeyWarning" xml:space="preserve">
<value>Questa esportazione cripta i tuoi dati utilizzando la chiave di criptografia del tuo account. Se cambi la chiave di criptografia del tuo account, non potrai più decriptare il file esportato e dovrai creare un nuovo file di esportazione.</value> <value>Questa esportazione cripta i tuoi dati usando la chiave di criptografia del tuo account. Se cambi la chiave di criptografia del tuo account, non potrai più decifrare il file esportato e dovrai eseguire una nuova esportazione.</value>
</data> </data>
<data name="EncExportAccountWarning" xml:space="preserve"> <data name="EncExportAccountWarning" xml:space="preserve">
<value>Le chiavi di criptografia dell'account sono uniche per ogni account Bitwarden, quindi non puoi importare un file di esportazione criptato in un account diverso.</value> <value>Le chiavi di criptografia dell'account sono uniche per ogni account Bitwarden, quindi non puoi importare un file di esportazione criptato in un account diverso.</value>
@@ -1686,7 +1686,7 @@
<value>Si è verificato un problema esportando la tua cassaforte. Se il problema persiste, esportala dalla cassaforte web.</value> <value>Si è verificato un problema esportando la tua cassaforte. Se il problema persiste, esportala dalla cassaforte web.</value>
</data> </data>
<data name="ExportVaultSuccess" xml:space="preserve"> <data name="ExportVaultSuccess" xml:space="preserve">
<value>Cassaforte esportata correttamente</value> <value>Cassaforte esportata</value>
</data> </data>
<data name="Clone" xml:space="preserve"> <data name="Clone" xml:space="preserve">
<value>Clona</value> <value>Clona</value>
@@ -1751,11 +1751,11 @@
<value>Sei sicuro di voler eliminare l'elemento?</value> <value>Sei sicuro di voler eliminare l'elemento?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Dati biometrici modificati, accedi con la password principale per attivare nuovamente lo sblocco con dati biometrici.</value> <value>Sblocco biometrico per questo account disabilitato in attesa della verifica della password principale.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Sblocco biometrico per riempimento automatico disabilitato in attesa della verifica della password principale.</value> <value>Sblocco biometrico del riempimento automatico per questo account disabilitato in attesa della verifica della password principale.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Gesto di sincronizzazione</value> <value>Gesto di sincronizzazione</value>
@@ -1782,7 +1782,7 @@
<value>Per completare l'accesso con SSO, imposta una password principale per accedere e proteggere la cassaforte.</value> <value>Per completare l'accesso con SSO, imposta una password principale per accedere e proteggere la cassaforte.</value>
</data> </data>
<data name="MasterPasswordPolicyInEffect" xml:space="preserve"> <data name="MasterPasswordPolicyInEffect" xml:space="preserve">
<value>La password principale deve avere i seguenti requisiti, stabiliti dalle politiche dell'organizzazione:</value> <value>Una o più politiche dell'organizzazione richiedono che la tua password principale soddisfi questi requisiti:</value>
</data> </data>
<data name="PolicyInEffectMinComplexity" xml:space="preserve"> <data name="PolicyInEffectMinComplexity" xml:space="preserve">
<value>Punteggio minimo di complessità {0}</value> <value>Punteggio minimo di complessità {0}</value>
@@ -1816,7 +1816,7 @@
</value> </value>
</data> </data>
<data name="AcceptPoliciesError" xml:space="preserve"> <data name="AcceptPoliciesError" xml:space="preserve">
<value>I termini di servizio e l'informativa sulla privacy non sono stati accettati.</value> <value>I Termini di Servizio e l'Informativa sulla Privacy non sono stati accettati.</value>
</data> </data>
<data name="TermsOfService" xml:space="preserve"> <data name="TermsOfService" xml:space="preserve">
<value>Termini di Servizio</value> <value>Termini di Servizio</value>
@@ -1825,7 +1825,7 @@
<value>Informativa sulla Privacy</value> <value>Informativa sulla Privacy</value>
</data> </data>
<data name="AccessibilityDrawOverPermissionAlert" xml:space="preserve"> <data name="AccessibilityDrawOverPermissionAlert" xml:space="preserve">
<value>Bitwarden richiede la tua attenzione - Abilita "Mostra sopra altre app" nelle impostazioni di Bitwarden</value> <value>Bitwarden richiede la tua attenzione - Abilita "Mostra sopra altre app" in "Servizi di riempimento automatico" dalle impostazioni di Bitwarden</value>
</data> </data>
<data name="AutofillServices" xml:space="preserve"> <data name="AutofillServices" xml:space="preserve">
<value>Servizi di riempimento automatico</value> <value>Servizi di riempimento automatico</value>
@@ -1861,7 +1861,7 @@
<value>Se abilitato, il servizio di accessibilità di Bitwarden mostrerà un pop-up per aiutarti a riempire automaticamente i tuoi login quando selezioni dei campi di login.</value> <value>Se abilitato, il servizio di accessibilità di Bitwarden mostrerà un pop-up per aiutarti a riempire automaticamente i tuoi login quando selezioni dei campi di login.</value>
</data> </data>
<data name="DrawOverDescription3" xml:space="preserve"> <data name="DrawOverDescription3" xml:space="preserve">
<value>Se abilitato, l'accessibilità mostrerà un pop-up per migliorare il servizio di riempimento automatico per applicazioni più vecchie che non supportano la struttura di riempimento automatico di Android.</value> <value>Se abilitato, l'accessibilità mostrerà un pop-up per migliorare il servizio di riempimento automatico per app più vecchie che non supportano la struttura di riempimento automatico di Android.</value>
</data> </data>
<data name="PersonalOwnershipSubmitError" xml:space="preserve"> <data name="PersonalOwnershipSubmitError" xml:space="preserve">
<value>A causa di una politica aziendale, non puoi salvare elementi nella tua cassaforte personale. Cambia l'opzione di proprietà in un'organizzazione e scegli tra le raccolte disponibili.</value> <value>A causa di una politica aziendale, non puoi salvare elementi nella tua cassaforte personale. Cambia l'opzione di proprietà in un'organizzazione e scegli tra le raccolte disponibili.</value>
@@ -1946,7 +1946,7 @@
<value>Numero massimo di accessi</value> <value>Numero massimo di accessi</value>
</data> </data>
<data name="MaximumAccessCountInfo" xml:space="preserve"> <data name="MaximumAccessCountInfo" xml:space="preserve">
<value>Se impostata, gli utenti potranno più accedere a questo Send una volta raggiunto il numero massimo di accessi.</value> <value>Se impostata, gli utenti non potranno più accedere a questo Send una volta raggiunto il numero massimo di accessi.</value>
<comment>'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated.</comment> <comment>'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated.</comment>
</data> </data>
<data name="MaximumAccessCountReached" xml:space="preserve"> <data name="MaximumAccessCountReached" xml:space="preserve">
@@ -1997,7 +1997,7 @@
<value>Condividi link</value> <value>Condividi link</value>
</data> </data>
<data name="SendLink" xml:space="preserve"> <data name="SendLink" xml:space="preserve">
<value>Collegamento del Send</value> <value>Link del Send</value>
<comment>'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated.</comment> <comment>'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated.</comment>
</data> </data>
<data name="SearchSends" xml:space="preserve"> <data name="SearchSends" xml:space="preserve">
@@ -2066,7 +2066,7 @@
<comment>'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated.</comment> <comment>'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated.</comment>
</data> </data>
<data name="SendFilePremiumRequired" xml:space="preserve"> <data name="SendFilePremiumRequired" xml:space="preserve">
<value>Gli account gratuiti sono limitati alla condivisione di testo. Per condividere i file usando Send è necessario un abbonamento Premium.</value> <value>Gli account gratis sono limitati alla condivisione di testo. Per condividere i file usando Send è necessario un abbonamento Premium.</value>
<comment>'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated.</comment> <comment>'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated.</comment>
</data> </data>
<data name="SendFileEmailVerificationRequired" xml:space="preserve"> <data name="SendFileEmailVerificationRequired" xml:space="preserve">
@@ -2074,13 +2074,13 @@
<comment>'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated.</comment> <comment>'Send' is a noun and the name of a feature called 'Bitwarden Send'. It should not be translated.</comment>
</data> </data>
<data name="PasswordPrompt" xml:space="preserve"> <data name="PasswordPrompt" xml:space="preserve">
<value>Nuova richiesta della password principale</value> <value>Richiedi di inserire la password principale di nuovo per visualizzare questo elemento</value>
</data> </data>
<data name="PasswordConfirmation" xml:space="preserve"> <data name="PasswordConfirmation" xml:space="preserve">
<value>Conferma della password principale</value> <value>Conferma della password principale</value>
</data> </data>
<data name="PasswordConfirmationDesc" xml:space="preserve"> <data name="PasswordConfirmationDesc" xml:space="preserve">
<value>Questa azione è protetta. Per continuare, digita nuovamente la tua password principale per verificare la tua identità.</value> <value>Questa azione è protetta. Inserisci la tua password principale di nuovo per verificare la tua identità.</value>
</data> </data>
<data name="CaptchaRequired" xml:space="preserve"> <data name="CaptchaRequired" xml:space="preserve">
<value>Captcha obbligatorio</value> <value>Captcha obbligatorio</value>
@@ -2095,7 +2095,7 @@
<value>Aggiorna password principale</value> <value>Aggiorna password principale</value>
</data> </data>
<data name="UpdateMasterPasswordWarning" xml:space="preserve"> <data name="UpdateMasterPasswordWarning" xml:space="preserve">
<value>La tua password principale è stata recentemente modificata da un amministratore nella tua organizzazione. Per accedere alla cassaforte, devi aggiornarla ora. Procedendo sarai disconnesso dalla sessione attuale, richiedendo di effettuare nuovamente l'accesso. Le sessioni attive su altri dispositivi possono continuare a rimanere attive per un massimo di un'ora.</value> <value>La tua password principale è stata recentemente modificata da un amministratore nella tua organizzazione. Per accedere alla cassaforte, aggiornala ora. Procedere ti farà uscire dalla sessione corrente, richiedendoti di accedere di nuovo. Le sessioni attive su altri dispositivi potrebbero continuare a rimanere attive per un massimo di un'ora.</value>
</data> </data>
<data name="UpdatingPassword" xml:space="preserve"> <data name="UpdatingPassword" xml:space="preserve">
<value>Aggiornamento password</value> <value>Aggiornamento password</value>
@@ -2142,6 +2142,12 @@
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Le politiche della tua organizzazione stanno influenzando il timeout della tua cassaforte. Il tempo massimo consentito è di {0} ore e {1} minuti</value> <value>Le politiche della tua organizzazione stanno influenzando il timeout della tua cassaforte. Il tempo massimo consentito è di {0} ore e {1} minuti</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Le politiche della tua organizzazione stanno influenzando il timeout della tua cassaforte. Il tempo massimo consentito è di {0} ore e {1} minuti. La tua azione di timeout della cassaforte è impostata su {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Le politiche della tua organizzazione hanno impostato l'azione di timeout cassaforte su {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Il timeout della tua cassaforte supera i limiti impostati dalla tua organizzazione.</value> <value>Il timeout della tua cassaforte supera i limiti impostati dalla tua organizzazione.</value>
</data> </data>
@@ -2167,10 +2173,10 @@
<value>Account bloccato</value> <value>Account bloccato</value>
</data> </data>
<data name="AccountLoggedOutSuccessfully" xml:space="preserve"> <data name="AccountLoggedOutSuccessfully" xml:space="preserve">
<value>Account uscito correttamente</value> <value>Account uscito</value>
</data> </data>
<data name="AccountRemovedSuccessfully" xml:space="preserve"> <data name="AccountRemovedSuccessfully" xml:space="preserve">
<value>Account rimosso correttamente</value> <value>Account rimosso</value>
</data> </data>
<data name="DeleteAccount" xml:space="preserve"> <data name="DeleteAccount" xml:space="preserve">
<value>Elimina account</value> <value>Elimina account</value>
@@ -2200,7 +2206,7 @@
<value>Invio in corso</value> <value>Invio in corso</value>
</data> </data>
<data name="CopySendLinkOnSave" xml:space="preserve"> <data name="CopySendLinkOnSave" xml:space="preserve">
<value>Copia il link al Send dopo averlo salvato.</value> <value>Copia il link al Send dopo averlo salvato</value>
</data> </data>
<data name="SendingCode" xml:space="preserve"> <data name="SendingCode" xml:space="preserve">
<value>Invio codice in corso...</value> <value>Invio codice in corso...</value>
@@ -2209,7 +2215,7 @@
<value>Verifica</value> <value>Verifica</value>
</data> </data>
<data name="ResendCode" xml:space="preserve"> <data name="ResendCode" xml:space="preserve">
<value>Invia di nuovo il codice</value> <value>Invia codice di nuovo</value>
</data> </data>
<data name="AVerificationCodeWasSentToYourEmail" xml:space="preserve"> <data name="AVerificationCodeWasSentToYourEmail" xml:space="preserve">
<value>Il codice di verifica è stato inviato al tuo indirizzo email</value> <value>Il codice di verifica è stato inviato al tuo indirizzo email</value>
@@ -2467,7 +2473,7 @@ clicca Aggiungi TOTP per salvare la chiave in modo sicuro</value>
<value>Ulteriori informazioni sul servizio di accessibilità</value> <value>Ulteriori informazioni sul servizio di accessibilità</value>
</data> </data>
<data name="AccessibilityDisclosureText" xml:space="preserve"> <data name="AccessibilityDisclosureText" xml:space="preserve">
<value>Bitwarden usa il servizio di accessibilità per cercare i campi di login in app e siti web e individuare gli ID di campo appropriati per inserire nome utente e password quando è trovata una corrispondenza per il sito o l'app. Non memorizziamo nessuna delle informazioni che ci vengono presentate dal servizio, e non controlliamo eventuali altri elementi sullo schermo diversi dall'immissione di credenziali.</value> <value>Bitwarden usa il servizio di accessibilità per cercare i campi di login in app e siti web e individuare gli ID di campo appropriati per inserire nome utente e password quando è trovata una corrispondenza per il sito o l'app. Non memorizziamo nessuna delle informazioni che ci soono presentate dal servizio, e non controlliamo eventuali altri elementi sullo schermo diversi dall'immissione di credenziali.</value>
</data> </data>
<data name="Accept" xml:space="preserve"> <data name="Accept" xml:space="preserve">
<value>Accetta</value> <value>Accetta</value>
@@ -2511,7 +2517,7 @@ Vuoi passare a questo account?</value>
<value>Assicurati che la tua cassaforte sia sbloccata e che la frase impronta corrisponda sull'altro dispositivo.</value> <value>Assicurati che la tua cassaforte sia sbloccata e che la frase impronta corrisponda sull'altro dispositivo.</value>
</data> </data>
<data name="ResendNotification" xml:space="preserve"> <data name="ResendNotification" xml:space="preserve">
<value>Invia nuova notifica</value> <value>Invia notifica di nuovo</value>
</data> </data>
<data name="NeedAnotherOption" xml:space="preserve"> <data name="NeedAnotherOption" xml:space="preserve">
<value>Hai bisogno di un'altra opzione?</value> <value>Hai bisogno di un'altra opzione?</value>
@@ -2603,4 +2609,10 @@ Vuoi passare a questo account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Nessun elemento corrisponde alla ricerca</value> <value>Nessun elemento corrisponde alla ricerca</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>La tua password principale non soddisfa uno o più politiche della tua organizzazione. Per accedere alla cassaforte, aggiornala ora. Procedere ti farà uscire dalla sessione corrente, richiedendoti di accedere di nuovo. Le sessioni attive su altri dispositivi potrebbero continuare a rimanere attive per un massimo di un'ora.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Password principale corrente</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@
<value>本当にごみ箱に入れますか?</value> <value>本当にごみ箱に入れますか?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>生体認証の変更が検出されました。マスターパスワードを使用してログインすると再度有効化できます。</value> <value>このアカウントの生体認証ロック解除はマスターパスワードの検証待ちで無効になっています。</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>マスターパスワードの検証保留中は生体認証でのロック解除は無効化されています</value> <value>このアカウントの自動入力の生体認証ロック解除はマスターパスワードの検証待ちで無効になっています</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>更新時に同期を有効化</value> <value>更新時に同期を有効化</value>
@@ -2142,6 +2142,12 @@
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>組織のポリシーが保管庫のタイムアウトに影響を与えています。保管庫のタイムアウトは {0} 時間 {1} 分です。</value> <value>組織のポリシーが保管庫のタイムアウトに影響を与えています。保管庫のタイムアウトは {0} 時間 {1} 分です。</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>組織のポリシーがデータ保管庫のタイムアウトに影響しています。保管庫のタイムアウトの最大許容値は、{0}時間{1}分です。保管庫タイムアウト時のアクションは、{2}に設定されています。</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>組織のポリシーで保管庫のタイムアウトアクションが{0}に設定されています。</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>保管庫のタイムアウトが組織によって設定された制限を超えています。</value> <value>保管庫のタイムアウトが組織によって設定された制限を超えています。</value>
</data> </data>
@@ -2603,4 +2609,10 @@
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>検索に一致するアイテムはありません</value> <value>検索に一致するアイテムはありません</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>マスターパスワードが組織のポリシーに適合していません。保管庫にアクセスするには、今すぐマスターパスワードを更新しなければなりません。続行すると現在のセッションからログアウトし、再度ログインする必要があります。 他のデバイス上のアクティブなセッションは、最大1時間アクティブであり続けることがあります。</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>現在のマスターパスワード</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>Do you really want to send to the trash?</value> <value>Do you really want to send to the trash?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Allow sync on refresh</value> <value>Allow sync on refresh</value>
@@ -2141,7 +2141,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2604,4 +2610,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1753,11 +1753,11 @@ Scanning will happen automatically.</value>
<value>ನೀವು ನಿಜವಾಗಿಯೂ ಅನುಪಯುಕ್ತಕ್ಕೆ ಕಳುಹಿಸಲು ಬಯಸುವಿರಾ?</value> <value>ನೀವು ನಿಜವಾಗಿಯೂ ಅನುಪಯುಕ್ತಕ್ಕೆ ಕಳುಹಿಸಲು ಬಯಸುವಿರಾ?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>ಬಯೋಮೆಟ್ರಿಕ್ ಅನ್ಲಾಕ್ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ ಮಾಸ್ಟರ್ ಪಾಸ್ವರ್ಡ್ನ ಪರಿಶೀಲನೆ ಬಾಕಿ ಉಳಿದಿದೆ.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>ಸ್ವಯಂಚಾಲಿತ ಭರ್ತಿಗಾಗಿ ಬಯೋಮೆಟ್ರಿಕ್ ಅನ್ಲಾಕ್ ಮಾಸ್ಟರ್ ಪಾಸ್ವರ್ಡ್ನ ಪರಿಶೀಲನೆ ಬಾಕಿ ಉಳಿದಿದೆ.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>ರಿಫ್ರೆಶ್‌ನಲ್ಲಿ ಸಿಂಕ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ</value> <value>ರಿಫ್ರೆಶ್‌ನಲ್ಲಿ ಸಿಂಕ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ</value>
@@ -2141,7 +2141,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2604,4 +2610,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@
<value>정말로 휴지통으로 이동시킬까요?</value> <value>정말로 휴지통으로 이동시킬까요?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>생체인증 변경이 확인되었습니다. 마스터 비밀번호로 로그인해서 다시 활성화 해주세요.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>마스터 비밀번호 인증을 하기 전에는 생체 인식을 사용한 자동 채우기가 비활성화됩니다.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>새로고침할 때 동기화 사용</value> <value>새로고침할 때 동기화 사용</value>
@@ -2142,6 +2142,12 @@
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>조직 정책이 보관함 제한 시간에 영향을 미치고 있습니다. 최대 허용 보관함 제한 시간은 {0}시간 {1}분입니다</value> <value>조직 정책이 보관함 제한 시간에 영향을 미치고 있습니다. 최대 허용 보관함 제한 시간은 {0}시간 {1}분입니다</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>볼트 제한 시간이 조직에서 설정한 제한을 초과합니다.</value> <value>볼트 제한 시간이 조직에서 설정한 제한을 초과합니다.</value>
</data> </data>
@@ -2603,4 +2609,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>검색어와 일치하는 항목이 없습니다</value> <value>검색어와 일치하는 항목이 없습니다</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -193,7 +193,7 @@
<value>Parašykite mums</value> <value>Parašykite mums</value>
</data> </data>
<data name="EmailUsDescription" xml:space="preserve"> <data name="EmailUsDescription" xml:space="preserve">
<value>Gauti pagalbos ar palikti atsiliepimą - parašykute el. laišką.</value> <value>Gauti pagalbos ar palikti atsiliepimą - parašykite el. laišką.</value>
</data> </data>
<data name="EnterPIN" xml:space="preserve"> <data name="EnterPIN" xml:space="preserve">
<value>Įveskite PIN kodą.</value> <value>Įveskite PIN kodą.</value>
@@ -219,7 +219,7 @@
<value>Naujas aplankas sukurtas.</value> <value>Naujas aplankas sukurtas.</value>
</data> </data>
<data name="FolderDeleted" xml:space="preserve"> <data name="FolderDeleted" xml:space="preserve">
<value>Katalogas ištrintas.</value> <value>Aplankas ištrintas.</value>
</data> </data>
<data name="FolderNone" xml:space="preserve"> <data name="FolderNone" xml:space="preserve">
<value>Be aplanko</value> <value>Be aplanko</value>
@@ -243,7 +243,7 @@
<comment>Hide a secret value that is currently shown (password).</comment> <comment>Hide a secret value that is currently shown (password).</comment>
</data> </data>
<data name="InternetConnectionRequiredMessage" xml:space="preserve"> <data name="InternetConnectionRequiredMessage" xml:space="preserve">
<value>Prisijunkite prie interneto kad tęsti toliau.</value> <value>Prisijunkite prie interneto, kad tęsti toliau.</value>
<comment>Description message for the alert when internet connection is required to continue.</comment> <comment>Description message for the alert when internet connection is required to continue.</comment>
</data> </data>
<data name="InternetConnectionRequiredTitle" xml:space="preserve"> <data name="InternetConnectionRequiredTitle" xml:space="preserve">
@@ -1752,11 +1752,11 @@ Nuskaitymas vyks automatiškai.</value>
<value>Ar tikrai norite perkelti į šiukšlinę?</value> <value>Ar tikrai norite perkelti į šiukšlinę?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometrinis atrakinimas išjungtas, kol bus patvirtintas pagrindinis slaptažodis.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometrinis automatinio pildymo atrakinimas išjungtas, kol bus patvirtintas pagrindinis slaptažodis.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Leisti sinchronizuoti atnaujinant</value> <value>Leisti sinchronizuoti atnaujinant</value>
@@ -2143,6 +2143,12 @@ Nuskaitymas vyks automatiškai.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Jūsų organizacijos politika turi įtakos saugyklos skirtajam laikui. Didžiausias leistinas saugyklos skirtasis laikas yra {0} valanda (-os) ir {1} minutė (-ės)</value> <value>Jūsų organizacijos politika turi įtakos saugyklos skirtajam laikui. Didžiausias leistinas saugyklos skirtasis laikas yra {0} valanda (-os) ir {1} minutė (-ės)</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Jūsų organizacijos nustatymai apriboja jūsų saugyklos neaktyvumo laiko nustatymus. Maksimalus leidžiamas saugyklos neaktyvumo laikas yra {0} valanda(-os) ir {1} minutė(s). Jūsų saugyklos neaktyvumo laikas yra nustatytas {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Jūsų organizacija nustatė saugyklos neaktyvumo trukmę {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Jūsų saugyklos skirtasis laikas viršija jūsų organizacijos nustatytus apribojimus.</value> <value>Jūsų saugyklos skirtasis laikas viršija jūsų organizacijos nustatytus apribojimus.</value>
</data> </data>
@@ -2604,4 +2610,10 @@ Ar norite pereiti prie šios paskyros?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Elementų, atitinkančių paiešką, nėra</value> <value>Elementų, atitinkančių paiešką, nėra</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Jūsų pagrindinis slaptažodis neatitinka vieno ar kelių organizacijos slaptažodžiui keliamų reikalavimų. Norėdami prisijungti prie saugyklos, jūs turite atnaujinti savo pagrindinį slaptažodį. Jeigu nuspręsite tęsti, jūs būsite atjungti nuo dabartinės sesijos ir jums reikės vėl prisijungti. Visos aktyvios sesijos kituose įrenginiuose gali išlikti aktyvios iki vienos valandos.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Dabartinis pagrindinis slaptažodis</value>
</data>
</root> </root>

View File

@@ -1752,10 +1752,10 @@ Nolasīšana notiks automātiski.</value>
<value>Vai tiešām vēlaties sūtīt uz atkritni?</value> <value>Vai tiešām vēlaties sūtīt uz atkritni?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Atslēgšana ar biometriju ir atspējota, tiek gaidīts galvenās paroles apstiprinājums.</value> <value>Šī konta atslēgšana ar biometriju ir atspējota, tiek gaidīts galvenās paroles apstiprinājums.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Automātiskās aizpildes atslēgšana ar biometriju ir atspējota, tiek gaidīts galvenās paroles apstiprinājums.</value> <value>Automātiskās aizpildes atslēgšana ar biometriju ir atspējota, tiek gaidīts galvenās paroles apstiprinājums.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
@@ -2142,6 +2142,12 @@ Nolasīšana notiks automātiski.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Apvienības nosacījumi ietekmē glabātavas noildzi. Lielākā atļautā glabātavas noildze ir {0} stunda(s) un {1} minūte(s)</value> <value>Apvienības nosacījumi ietekmē glabātavas noildzi. Lielākā atļautā glabātavas noildze ir {0} stunda(s) un {1} minūte(s)</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Apvienības nosacījumi ietekmē glabātavas noildzi. Lielākā atļautā glabātavas noildze ir {0} stunda(s) un {1} minūte(s). Kā glabātavas noildzes darbība ir uzstādīta {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Apvienības nosacījumos kā glabātavas noildzes darbība ir uzstādīta {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Glabātavas noildze pārsniedz apvienības uzstādītos ierobežojumus.</value> <value>Glabātavas noildze pārsniedz apvienības uzstādītos ierobežojumus.</value>
</data> </data>
@@ -2603,4 +2609,10 @@ Vai pārslēgties uz šo kontu?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Nav vienumu, kas atbilstu meklējumam</value> <value>Nav vienumu, kas atbilstu meklējumam</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Galvenā parole neatbilst vienam vai vairākiem apvienības nosacījumiem. Ir jāatjaunina galvenā parole, lai varētu piekļūt glabātavai. Turpinot notiks atteikšanās no pašreizējās sesijas, un būs nepieciešams pieteikties no jauna. Citās ierīcēs esošās sesijas var turpināt darboties līdz vienai stundai.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Pašreizējā galvenā parole</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>ട്രാഷിലേക്ക് അയയ്‌ക്കാൻ നിങ്ങൾ ശരിക്കും ആഗ്രഹിക്കുന്നുണ്ടോ?</value> <value>ട്രാഷിലേക്ക് അയയ്‌ക്കാൻ നിങ്ങൾ ശരിക്കും ആഗ്രഹിക്കുന്നുണ്ടോ?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>റിഫ്രഷ് ചെയ്യുമ്പോൾ സമന്വയം പ്രാപ്തമാക്കുക</value> <value>റിഫ്രഷ് ചെയ്യുമ്പോൾ സമന്വയം പ്രാപ്തമാക്കുക</value>
@@ -2140,7 +2140,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2603,4 +2609,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>Do you really want to send to the trash?</value> <value>Do you really want to send to the trash?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Allow sync on refresh</value> <value>Allow sync on refresh</value>
@@ -2141,7 +2141,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2604,4 +2610,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Skanning skjer automatisk.</value>
<value>Vil du virkelig sende til papirkurven?</value> <value>Vil du virkelig sende til papirkurven?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometrisk opplåsing er deaktivert under påvente av hovedpassord.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometrisk opplåsing for autofyll deaktivert i påvente av verifisering av hovedpassord.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Aktiver synkronisering ved oppdatering</value> <value>Aktiver synkronisering ved oppdatering</value>
@@ -2143,6 +2143,12 @@ Skanning skjer automatisk.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Din organisasjons vikår påvirker tidsavbruddet for hvelvet. Maksimalt tillatt tidsavbrudd for hvelv er {0} time(r) og {1} minutt(er)</value> <value>Din organisasjons vikår påvirker tidsavbruddet for hvelvet. Maksimalt tillatt tidsavbrudd for hvelv er {0} time(r) og {1} minutt(er)</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Tidsavbruddet ditt for hvelvet overstiger begrensningene som er satt av organisasjonen din.</value> <value>Tidsavbruddet ditt for hvelvet overstiger begrensningene som er satt av organisasjonen din.</value>
</data> </data>
@@ -2604,4 +2610,10 @@ Vil du bytte til denne kontoen?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Det er ingen elementer som samsvarer med søket</value> <value>Det er ingen elementer som samsvarer med søket</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>Do you really want to send to the trash?</value> <value>Do you really want to send to the trash?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Allow sync on refresh</value> <value>Allow sync on refresh</value>
@@ -2141,7 +2141,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2604,4 +2610,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -584,7 +584,7 @@
<value>Een hoofdwachtwoordhint kan je helpen je wachtwoord te herinneren als je het vergeten bent.</value> <value>Een hoofdwachtwoordhint kan je helpen je wachtwoord te herinneren als je het vergeten bent.</value>
</data> </data>
<data name="MasterPasswordLengthValMessageX" xml:space="preserve"> <data name="MasterPasswordLengthValMessageX" xml:space="preserve">
<value>Master password must be at least {0} characters long.</value> <value>Hoofdwachtwoord moet minstens {0} karakters lang zijn.</value>
</data> </data>
<data name="MinNumbers" xml:space="preserve"> <data name="MinNumbers" xml:space="preserve">
<value>Min. aantal cijfers</value> <value>Min. aantal cijfers</value>
@@ -1752,11 +1752,11 @@ Het scannen gebeurt automatisch.</value>
<value>Weet je zeker dat je dit naar de prullenbak wilt verplaatsen?</value> <value>Weet je zeker dat je dit naar de prullenbak wilt verplaatsen?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometrische ontgrendeling uitgeschakeld in afwachting van verificatie van het hoofdwachtwoord.</value> <value>Biometrische ontgrendeling voor deze account is uitgeschakeld in afwachting van verificatie van het hoofdwachtwoord.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometrische ontgrendeling is uitgeschakeld in afwachting van verificatie van het hoofdwachtwoord.</value> <value>Automatische biometrische ontgrendeling voor deze account is uitgeschakeld in afwachting van verificatie van het hoofdwachtwoord.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Synchronisatie bij vernieuwen inschakelen</value> <value>Synchronisatie bij vernieuwen inschakelen</value>
@@ -2142,6 +2142,12 @@ Het scannen gebeurt automatisch.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Het beleid van je organisatie heeft invloed op de time-out van je kluis. De maximaal toegestane kluis time-out is {0} uur en {1} minuten</value> <value>Het beleid van je organisatie heeft invloed op de time-out van je kluis. De maximaal toegestane kluis time-out is {0} uur en {1} minuten</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>De beleidsinstellingen van je organisatie hebben invloed op de time-out van je kluis. De maximale toegestane kluis time-out is {0} uur en {1} minuten. Jouw time-out is ingesteld op {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>De beleidsinstellingen van je organisatie hebben je kluis time-out ingesteld op {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Je kluis time-out is hoger dan het maximum van jouw organisatie.</value> <value>Je kluis time-out is hoger dan het maximum van jouw organisatie.</value>
</data> </data>
@@ -2603,4 +2609,10 @@ Wilt u naar dit account wisselen?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Er zijn geen items die overeenkomen met de zoekopdracht</value> <value>Er zijn geen items die overeenkomen met de zoekopdracht</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Je hoofdwachtwoord voldoet niet aan en of meerdere oganisatiebeleidsonderdelen. Om toegang te krijgen tot de kluis, moet je je hoofdwachtwoord nu bijwerken. Doorgaan zal je huidige sessie uitloggen, waarna je opnieuw moet inloggen. Actieve sessies op andere apparaten blijven mogelijk nog een uur actief.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Huidig hoofdwachtwoord</value>
</data>
</root> </root>

View File

@@ -584,7 +584,7 @@
<value>Eit hovudpassordvink kan hjelpa deg med å hugsa passordet ditt om du gløymer det.</value> <value>Eit hovudpassordvink kan hjelpa deg med å hugsa passordet ditt om du gløymer det.</value>
</data> </data>
<data name="MasterPasswordLengthValMessageX" xml:space="preserve"> <data name="MasterPasswordLengthValMessageX" xml:space="preserve">
<value>Master password must be at least {0} characters long.</value> <value>Hovudpassordet ditt må vera minst {0} teikn langt.</value>
</data> </data>
<data name="MinNumbers" xml:space="preserve"> <data name="MinNumbers" xml:space="preserve">
<value>Min. tal på nummer</value> <value>Min. tal på nummer</value>
@@ -660,7 +660,7 @@
<value>Lag om passord</value> <value>Lag om passord</value>
</data> </data>
<data name="RetypeMasterPassword" xml:space="preserve"> <data name="RetypeMasterPassword" xml:space="preserve">
<value>Re-type master password</value> <value>Skriv inn hovudpassordet på nytt</value>
</data> </data>
<data name="SearchVault" xml:space="preserve"> <data name="SearchVault" xml:space="preserve">
<value>Leita i kvelvet</value> <value>Leita i kvelvet</value>
@@ -993,7 +993,7 @@ Scanning will happen automatically.</value>
<value>Trykk på denne meldinga for å sjå oppføringar i kvelvet ditt.</value> <value>Trykk på denne meldinga for å sjå oppføringar i kvelvet ditt.</value>
</data> </data>
<data name="CustomFields" xml:space="preserve"> <data name="CustomFields" xml:space="preserve">
<value>Custom fields</value> <value>Eigendefinerte felt</value>
</data> </data>
<data name="CopyNumber" xml:space="preserve"> <data name="CopyNumber" xml:space="preserve">
<value>Skriv av nummer</value> <value>Skriv av nummer</value>
@@ -1149,16 +1149,16 @@ Scanning will happen automatically.</value>
<value>Icons server URL</value> <value>Icons server URL</value>
</data> </data>
<data name="AutofillWithBitwarden" xml:space="preserve"> <data name="AutofillWithBitwarden" xml:space="preserve">
<value>Auto-fill with Bitwarden</value> <value>Auto-utfyll med Bitwarden</value>
</data> </data>
<data name="VaultIsLocked" xml:space="preserve"> <data name="VaultIsLocked" xml:space="preserve">
<value>Kvelvet er låst</value> <value>Kvelvet er låst</value>
</data> </data>
<data name="GoToMyVault" xml:space="preserve"> <data name="GoToMyVault" xml:space="preserve">
<value>Go to my vault</value> <value>Gå til kvelvet mitt</value>
</data> </data>
<data name="Collections" xml:space="preserve"> <data name="Collections" xml:space="preserve">
<value>Collections</value> <value>Samlingar</value>
</data> </data>
<data name="NoItemsCollection" xml:space="preserve"> <data name="NoItemsCollection" xml:space="preserve">
<value>Det er ingen oppføringar i denne samlinga.</value> <value>Det er ingen oppføringar i denne samlinga.</value>
@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>Vil du verkeleg flytta denne til papirkorga?</value> <value>Vil du verkeleg flytta denne til papirkorga?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Allow sync on refresh</value> <value>Allow sync on refresh</value>
@@ -2141,7 +2141,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Avbrotet frå kvelvet ditt skrid over det avgrensingane fastsette av samskipnaden din.</value> <value>Avbrotet frå kvelvet ditt skrid over det avgrensingane fastsette av samskipnaden din.</value>
@@ -2604,4 +2610,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

File diff suppressed because it is too large Load Diff

View File

@@ -1752,11 +1752,11 @@ Skanowanie nastąpi automatycznie.</value>
<value>Czy na pewno chcesz to usunąć?</value> <value>Czy na pewno chcesz to usunąć?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Odblokowanie za pomocą danych biometrycznych zostało wyłączone. Zaloguj się hasłem głównym.</value> <value>Odblokowanie biometryczne dla tego konta jest wyłączone w oczekiwaniu na weryfikację hasła głównego.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Autouzupełnianie za pomocą danych biometrycznych zostało wyłączone. Zaloguj się hasłem głównym.</value> <value>Autouzupełnianie za pomocą danych biometrycznych zostało wyłączone w oczekiwaniu na weryfikację hasła głównego.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Włącz synchronizację podczas odświeżenia</value> <value>Włącz synchronizację podczas odświeżenia</value>
@@ -2140,7 +2140,13 @@ Skanowanie nastąpi automatycznie.</value>
<value>Ta organizacja posługuje się zasadą, która automatycznie rejestruje użytkowników do resetowania hasła. Rejestracja umożliwia administratorom organizacji zmianę Twojego hasła głównego.</value> <value>Ta organizacja posługuje się zasadą, która automatycznie rejestruje użytkowników do resetowania hasła. Rejestracja umożliwia administratorom organizacji zmianę Twojego hasła głównego.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Zasady organizacji mają wpływ czas blokowania sejfu. Maksymalny dozwolony czas wynosi {0} godz. i {1} min.</value> <value>Zasady organizacji mają wpływ na czas blokowania sejfu. Maksymalny dozwolony czas wynosi {0} godz. i {1} min.</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Zasady organizacji mają wpływ na czas blokowania sejfu. Maksymalny dozwolony czas wynosi {0} godz. i {1} min. Twój czas blokowania sejfu to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Zasady organizacji ustawiły czas blokowania sejfu na {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Czas blokowania sejfu przekracza limit określony przez organizację.</value> <value>Czas blokowania sejfu przekracza limit określony przez organizację.</value>
@@ -2603,4 +2609,10 @@ Czy chcesz przełączyć się na to konto?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Brak elementów, które pasują do wyszukiwania</value> <value>Brak elementów, które pasują do wyszukiwania</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Twoje hasło główne nie spełnia jednej lub kilku zasad organizacji. Aby uzyskać dostęp do sejfu, musisz teraz zaktualizować swoje hasło główne. Kontynuacja wyloguje Cię z bieżącej sesji, wymagając zalogowania się ponownie. Aktywne sesje na innych urządzeniach mogą pozostać aktywne przez maksymalnie jedną godzinę.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Aktualne hasło główne</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ A leitura será feita automaticamente.</value>
<value>Você realmente quer enviar para a lixeira?</value> <value>Você realmente quer enviar para a lixeira?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>O desbloqueio biométrico está desativado, faça o login usando a Senha Mestra para ativar novamente.</value> <value>O desbloqueio biométrico desta conta está desabilitado com a verificação da senha mestra.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>O desbloqueio biométrico para autopreenchimento está desativado, faça o login usando a Senha Mestra para ativar novamente.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Ativar sincronização ao atualizar</value> <value>Ativar sincronização ao atualizar</value>
@@ -2143,6 +2143,12 @@ A leitura será feita automaticamente.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>As políticas da sua organização estão afetando o tempo limite do seu cofre. O Tempo Limite Máximo permitido do Cofre é {0} hora(s) e {1} minuto(s)</value> <value>As políticas da sua organização estão afetando o tempo limite do seu cofre. O Tempo Limite Máximo permitido do Cofre é {0} hora(s) e {1} minuto(s)</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>As políticas da sua organização estão afetando o tempo limite do seu cofre. O Tempo Limite Máximo permitido do Cofre é {0} hora(s) e {1} minuto(s). Seu tempo limite do cofre está definido em {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>As políticas da sua organização definiram a ação tempo limite do seu cofre para {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>O tempo limite do seu cofre excede as restrições definidas por sua organização.</value> <value>O tempo limite do seu cofre excede as restrições definidas por sua organização.</value>
</data> </data>
@@ -2604,4 +2610,10 @@ Você deseja mudar para esta conta?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Não há itens que correspondam à pesquisa</value> <value>Não há itens que correspondam à pesquisa</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>A sua senha mestra não atende a uma ou mais das políticas da sua organização. Para acessar o cofre, você deve atualizar a sua senha mestra agora. O processo desconectará você da sessão atual, exigindo que você inicie a sessão novamente. Sessões ativas em outros dispositivos podem continuar ativas por até uma hora.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Senha mestra atual</value>
</data>
</root> </root>

View File

@@ -232,7 +232,7 @@
<value>Pasta atualizada.</value> <value>Pasta atualizada.</value>
</data> </data>
<data name="GoToWebsite" xml:space="preserve"> <data name="GoToWebsite" xml:space="preserve">
<value>Ir para o website</value> <value>Ir para o site</value>
<comment>The button text that allows user to launch the website to their web browser.</comment> <comment>The button text that allows user to launch the website to their web browser.</comment>
</data> </data>
<data name="HelpAndFeedback" xml:space="preserve"> <data name="HelpAndFeedback" xml:space="preserve">
@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>Pretende mesmo enviar para o lixo?</value> <value>Pretende mesmo enviar para o lixo?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Alteração biométrica detetada, inicie sessão utilizando a palavra-passe mestra para ativar novamente.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Desbloqueio biométrico para preenchimento automático desabilitado. Aguarda verificação da palavra-passe mestre.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Ativar sincronização ao atualizar</value> <value>Ativar sincronização ao atualizar</value>
@@ -2140,7 +2140,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2384,7 +2390,7 @@ select Add TOTP to store the key safely</value>
<value>What would you like to generate?</value> <value>What would you like to generate?</value>
</data> </data>
<data name="UsernameType" xml:space="preserve"> <data name="UsernameType" xml:space="preserve">
<value>Username type</value> <value>Tipo de nome de utilizador</value>
</data> </data>
<data name="PlusAddressedEmail" xml:space="preserve"> <data name="PlusAddressedEmail" xml:space="preserve">
<value>Plus addressed email</value> <value>Plus addressed email</value>
@@ -2434,10 +2440,10 @@ select Add TOTP to store the key safely</value>
<value>API access token</value> <value>API access token</value>
</data> </data>
<data name="AreYouSureYouWantToOverwriteTheCurrentUsername" xml:space="preserve"> <data name="AreYouSureYouWantToOverwriteTheCurrentUsername" xml:space="preserve">
<value>Are you sure you want to overwrite the current username?</value> <value>Tem a certeza de que deseja sobrescrever o nome de utilizador atual?</value>
</data> </data>
<data name="GenerateUsername" xml:space="preserve"> <data name="GenerateUsername" xml:space="preserve">
<value>Generate username</value> <value>Gerar nome de utilizador</value>
</data> </data>
<data name="EmailType" xml:space="preserve"> <data name="EmailType" xml:space="preserve">
<value>Email Type</value> <value>Email Type</value>
@@ -2603,4 +2609,10 @@ Deseja mudar para esta conta?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>Do you really want to send to the trash?</value> <value>Do you really want to send to the trash?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Allow sync on refresh</value> <value>Allow sync on refresh</value>
@@ -2141,7 +2141,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2604,4 +2610,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -397,10 +397,10 @@
<value>Vizitați-ne website-ul</value> <value>Vizitați-ne website-ul</value>
</data> </data>
<data name="VisitOurWebsiteDescription" xml:space="preserve"> <data name="VisitOurWebsiteDescription" xml:space="preserve">
<value>Vizitați saitul nostru pentru a primi ajutor, știri, pentru a trimite e-mail, și/sau aflați mai multe despre cum să utilizați Bitwarden.</value> <value>Vizitați siteul nostru pentru a primi ajutor, știri, pentru a trimite e-mail, și/sau aflați mai multe despre cum să utilizați Bitwarden.</value>
</data> </data>
<data name="Website" xml:space="preserve"> <data name="Website" xml:space="preserve">
<value>Sait web</value> <value>Site web</value>
<comment>Label for a website.</comment> <comment>Label for a website.</comment>
</data> </data>
<data name="Yes" xml:space="preserve"> <data name="Yes" xml:space="preserve">
@@ -523,7 +523,7 @@
<value>Import de articole</value> <value>Import de articole</value>
</data> </data>
<data name="ImportItemsConfirmation" xml:space="preserve"> <data name="ImportItemsConfirmation" xml:space="preserve">
<value>Puteți să importați datele de conectare din seiful web bitwarden.com. Doriți să vizitați saitul acum?</value> <value>Puteți să importați datele de conectare din seiful web bitwarden.com. Doriți să vizitați siteul acum?</value>
</data> </data>
<data name="ImportItemsDescription" xml:space="preserve"> <data name="ImportItemsDescription" xml:space="preserve">
<value>Import rapid al datelor de conectare din alte aplicații de gestionare a parolelor.</value> <value>Import rapid al datelor de conectare din alte aplicații de gestionare a parolelor.</value>
@@ -613,7 +613,7 @@
<value>Nu există niciun articol în seiful dvs.</value> <value>Nu există niciun articol în seiful dvs.</value>
</data> </data>
<data name="NoItemsTap" xml:space="preserve"> <data name="NoItemsTap" xml:space="preserve">
<value>Nu sunt articole în seif pentru acest sait/aplicație. Atingeți pentru a adăuga unul.</value> <value>Nu sunt articole în seif pentru acest site/aplicație. Atingeți pentru a adăuga unul.</value>
</data> </data>
<data name="NoUsernamePasswordConfigured" xml:space="preserve"> <data name="NoUsernamePasswordConfigured" xml:space="preserve">
<value>Această autentificare nu are un nume de utilizator sau parolă configurate.</value> <value>Această autentificare nu are un nume de utilizator sau parolă configurate.</value>
@@ -1295,7 +1295,7 @@ Scanarea se va face automat.</value>
<value>Trebuie să vă conectați la aplicația principală Bitwarden înainte de a putea utiliza auto-completarea.</value> <value>Trebuie să vă conectați la aplicația principală Bitwarden înainte de a putea utiliza auto-completarea.</value>
</data> </data>
<data name="AutofillSetup" xml:space="preserve"> <data name="AutofillSetup" xml:space="preserve">
<value>Conectările dvs. sunt acum ușor accesibile chiar de la tastatură în timp ce vă conectați la aplicații și saituri web.</value> <value>Conectările dvs. sunt acum ușor accesibile chiar de la tastatură în timp ce vă conectați la aplicații și site-uri web.</value>
</data> </data>
<data name="AutofillSetup2" xml:space="preserve"> <data name="AutofillSetup2" xml:space="preserve">
<value>Vă recomandăm să dezactivați orice alte aplicații cu auto-completare din Setări dacă nu intenționați să le utilizați.</value> <value>Vă recomandăm să dezactivați orice alte aplicații cu auto-completare din Setări dacă nu intenționați să le utilizați.</value>
@@ -1468,7 +1468,7 @@ Scanarea se va face automat.</value>
<comment>A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing.</comment> <comment>A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing.</comment>
</data> </data>
<data name="LearnOrgConfirmation" xml:space="preserve"> <data name="LearnOrgConfirmation" xml:space="preserve">
<value>Bitwarden vă permite să vă partajați seiful cu alte persoane utilizând un cont pentru organizații. Doriți să vizitați saitul bitwarden.com pentru a afla mai multe?</value> <value>Bitwarden vă permite să vă partajați seiful cu alte persoane utilizând un cont pentru organizații. Doriți să vizitați siteul bitwarden.com pentru a afla mai multe?</value>
</data> </data>
<data name="ExportVault" xml:space="preserve"> <data name="ExportVault" xml:space="preserve">
<value>Export seif</value> <value>Export seif</value>
@@ -1752,11 +1752,11 @@ Scanarea se va face automat.</value>
<value>Sigur doriți să trimiteți în coșul de reciclare?</value> <value>Sigur doriți să trimiteți în coșul de reciclare?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Deblocarea biometrică a fost dezactivată în așteptarea verificării parolei principale.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Deblocarea biometrică pentru auto-completare a fost dezactivată în așteptarea verificării parolei principale.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Activare sincronizare la reîmprospătare</value> <value>Activare sincronizare la reîmprospătare</value>
@@ -2142,6 +2142,12 @@ Scanarea se va face automat.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Politicile de organizație afectează timpul de expirare a seifului. Timpul maxim de expirare a seifului este de {0} oră(e) și {1} minut(e)</value> <value>Politicile de organizație afectează timpul de expirare a seifului. Timpul maxim de expirare a seifului este de {0} oră(e) și {1} minut(e)</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Politicile organizației dumneavoastră afectează expirarea de seif. Timpul maxim permis de expirare a seifului este {0} ore şi {1} minut(e). Acţiunea de timeout a seifului este setată la {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Politicile organizației dvs. au setat acțiunea de expirare seif la {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Timpul de expirare al seifului depășește restricțiile stabilite de organizația dvs.</value> <value>Timpul de expirare al seifului depășește restricțiile stabilite de organizația dvs.</value>
</data> </data>
@@ -2603,4 +2609,10 @@ Doriți să comutați la acest cont?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Nu există lucruri care să corespundă căutării</value> <value>Nu există lucruri care să corespundă căutării</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Parola principală nu îndeplinește una sau mai multe politici ale organizației. Pentru a accesa seiful trebuie să actualizați acum parola principală. Continuarea te va deconecta din sesiunea curentă, necesitând să te autentifici din nou. Sesiunile active pe alte dispozitive pot continua să rămână active timp de maxim o oră.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Parola principală curentă</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@
<value>Вы действительно хотите отправить в корзину?</value> <value>Вы действительно хотите отправить в корзину?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Биометрическая разблокировка отключена в ожидании проверки мастер-пароля.</value> <value>Биометрическая разблокировка для этого аккаунта отключена в ожидании проверки мастер-пароля.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Биометрическая разблокировка для автозаполнения отключена в ожидании проверки мастер-пароля.</value> <value>Биометрическая разблокировка автозаполнения для этого аккаунта отключена в ожидании проверки мастер-пароля.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Включить синхронизацию жестом</value> <value>Включить синхронизацию жестом</value>
@@ -2140,7 +2140,13 @@
<value>В этой организации действует корпоративная политика, которая автоматически зарегистрирует вас на сброс пароля. Регистрация позволит администраторам организации изменить ваш мастер-пароль.</value> <value>В этой организации действует корпоративная политика, которая автоматически зарегистрирует вас на сброс пароля. Регистрация позволит администраторам организации изменить ваш мастер-пароль.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Политики вашей организации влияют на тайм-аут хранилища. Максимально допустимый тайм-аут хранилища составляет {0} час. и {1} мин.</value> <value>В соответствии с политиками вашей организации максимально допустимый тайм-аут хранилища составляет {0} час. и {1} мин.</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Политики вашей организации влияют на тайм-аут хранилища. Максимально допустимый тайм-аут хранилища составляет {0} час. и {1} мин. Для вашего хранилища задан тайм-аут {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Политики вашей организации установили тайм-аут хранилища на {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Тайм-аут вашего хранилища превышает ограничения, установленные вашей организацией.</value> <value>Тайм-аут вашего хранилища превышает ограничения, установленные вашей организацией.</value>
@@ -2603,4 +2609,10 @@
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Нет элементов, соответствующих запросу</value> <value>Нет элементов, соответствующих запросу</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Ваш мастер-пароль не соответствует требованиям политики вашей организации. Для доступа к хранилищу вы должны обновить свой мастер-пароль прямо сейчас. При этом текущая сессия будет завершена и потребуется повторная авторизация. Сессии на других устройствах могут оставаться активными в течение часа.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Текущий мастер-пароль</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>Do you really want to send to the trash?</value> <value>Do you really want to send to the trash?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Allow sync on refresh</value> <value>Allow sync on refresh</value>
@@ -2141,7 +2141,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2604,4 +2610,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Skenovanie prebehne automaticky.</value>
<value>Naozaj to chcete poslať do koša?</value> <value>Naozaj to chcete poslať do koša?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Bola zaznamenaná zmena biometrických údajov, prihláste za svojím hlavným heslom aby ste opäť povolili prihlásenie.</value> <value>Biometrické odblokovanie pre tento účet je deaktivované až do overenia hlavného hesla.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometrické odblokovanie pre automatické dopĺňanie je deaktivované až do overenia hlavného hesla.</value> <value>Automatické vypĺňanie cez biometrické odblokovanie pre tento účet je deaktivované až do overenia hlavného hesla.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Povoliť synchronizáciu pri obnovení</value> <value>Povoliť synchronizáciu pri obnovení</value>
@@ -2142,6 +2142,12 @@ Skenovanie prebehne automaticky.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Zásady vašej organizácie ovplyvňujú časový limit trezoru. Maximálny povolený časový limit trezoru je {0} h a {1} m</value> <value>Zásady vašej organizácie ovplyvňujú časový limit trezoru. Maximálny povolený časový limit trezoru je {0} h a {1} m</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Zásady vašej organizácie ovplyvňujú časový limit trezoru. Maximálny povolený časový limit trezoru je {0} h a {1} m. Nastavenie akcie pri vypršaní časového limitu je {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Zásady vašej organizácie nastavili akciu pri vypršaní časového limitu trezora na {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Časový limit vášho trezora prekračuje obmedzenia nastavené vašou organizáciou.</value> <value>Časový limit vášho trezora prekračuje obmedzenia nastavené vašou organizáciou.</value>
</data> </data>
@@ -2603,4 +2609,10 @@ Chcete prepnúť na toto konto?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Vyhľadávaniu nezodpovedajú žiadne položky</value> <value>Vyhľadávaniu nezodpovedajú žiadne položky</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Vaše hlavné heslo nespĺňa jednu alebo viacero podmienok vašej organizácie. Ak chcete získať prístup k trezoru, musíte teraz aktualizovať svoje hlavné heslo. Pokračovaním sa odhlásite z aktuálnej relácie a budete sa musieť znova prihlásiť. Aktívne relácie na iných zariadeniach môžu zostať aktívne až jednu hodinu.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Súčasné hlavné heslo</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>Ali res želite poslati v koš?</value> <value>Ali res želite poslati v koš?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Allow sync on refresh</value> <value>Allow sync on refresh</value>
@@ -2141,7 +2141,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2604,4 +2610,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@
<value>Стварно послати у отпад?</value> <value>Стварно послати у отпад?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Откривена је биометријска промена, пријавите се помоћу главне лозинке да бисте је поново омогућили.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Биометријско откључавање је онемогућено до верификације главне лозинке.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Омогући синхронизацију при освежавању</value> <value>Омогући синхронизацију при освежавању</value>
@@ -2144,6 +2144,12 @@
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Полиса ваше организације утиче на време истека сефа. Максимално дозвољено време истека је {0} сат(и) и {1} minut(а)</value> <value>Полиса ваше организације утиче на време истека сефа. Максимално дозвољено време истека је {0} сат(и) и {1} minut(а)</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Смернице ваше организације утичу на временско ограничење сефа. Максимално дозвољено ограничење сефа је {0} сат(и) и {1} минут(а). Ваша радња временског ограничења сефа је подешена на {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Смернице ваше организације су поставиле вашу радњу временског ограничења сефа на {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Време истека вашег сефа је премашило дозвољена ограничења од стране ваше организације.</value> <value>Време истека вашег сефа је премашило дозвољена ограничења од стране ваше организације.</value>
</data> </data>
@@ -2605,4 +2611,10 @@
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Нема ставки које одговарају претрази</value> <value>Нема ставки које одговарају претрази</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Ваша главна лозинка не испуњава једну или више смерница ваше организације. Да бисте приступили сефу, морате одмах да ажурирате главну лозинку. Ако наставите, одјавићете се са ваше тренутне сесије, што захтева да се поново пријавите. Активне сесије на другим уређајима могу да остану активне до један сат.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Тренутна главна лозинка</value>
</data>
</root> </root>

View File

@@ -1753,11 +1753,11 @@ Skanningen sker automatiskt.</value>
<value>Vill du verkligen skicka till papperskorgen?</value> <value>Vill du verkligen skicka till papperskorgen?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometrisk upplåsning är inaktiverad i väntan på bekräftelse av huvudlösenordet.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometrisk upplåsning för automatisk ifyllnad är inaktiverad i väntan på bekräftelse av huvudlösenordet.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Aktivera synkronisering vid uppdatering</value> <value>Aktivera synkronisering vid uppdatering</value>
@@ -2144,6 +2144,12 @@ Skanningen sker automatiskt.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Dina organisationsprinciper påverkar ditt valvs tid för timeout. Maximal tillåten tid innan timeout är {0} timme(ar) och {1} minut(er)</value> <value>Dina organisationsprinciper påverkar ditt valvs tid för timeout. Maximal tillåten tid innan timeout är {0} timme(ar) och {1} minut(er)</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Ditt valvs tid för timeout överskrider de begränsningar som fastställts av din organisation.</value> <value>Ditt valvs tid för timeout överskrider de begränsningar som fastställts av din organisation.</value>
</data> </data>
@@ -2605,4 +2611,10 @@ Vill du byta till detta konto?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Det finns inga objekt som matchar sökningen</value> <value>Det finns inga objekt som matchar sökningen</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Nuvarande huvudlösenord</value>
</data>
</root> </root>

View File

@@ -300,7 +300,7 @@
<comment>The title for the vault page.</comment> <comment>The title for the vault page.</comment>
</data> </data>
<data name="Authenticator" xml:space="preserve"> <data name="Authenticator" xml:space="preserve">
<value>Authenticator</value> <value>அங்கீகரிப்பாளர்</value>
<comment>Authenticator TOTP feature</comment> <comment>Authenticator TOTP feature</comment>
</data> </data>
<data name="Name" xml:space="preserve"> <data name="Name" xml:space="preserve">
@@ -584,7 +584,7 @@
<value>உங்கள் கடவுச்சொல்லை மறந்துவிட்டால் அதை நினைவுபடுத்த பிரதான கடவுச்சொல் குறிப்பு உதவும்.</value> <value>உங்கள் கடவுச்சொல்லை மறந்துவிட்டால் அதை நினைவுபடுத்த பிரதான கடவுச்சொல் குறிப்பு உதவும்.</value>
</data> </data>
<data name="MasterPasswordLengthValMessageX" xml:space="preserve"> <data name="MasterPasswordLengthValMessageX" xml:space="preserve">
<value>Master password must be at least {0} characters long.</value> <value>பிரதான கடவுச்சொல் குறைந்தது {0} வரியுருக்கள் இருக்க வேண்டும்.</value>
</data> </data>
<data name="MinNumbers" xml:space="preserve"> <data name="MinNumbers" xml:space="preserve">
<value>குறைந்தபட்ச எண்கள்</value> <value>குறைந்தபட்ச எண்கள்</value>
@@ -678,10 +678,10 @@
<value>செயலியைத் திறக்க 4 இலக்க கடவெண் குறியை உள்ளிடு.</value> <value>செயலியைத் திறக்க 4 இலக்க கடவெண் குறியை உள்ளிடு.</value>
</data> </data>
<data name="ItemInformation" xml:space="preserve"> <data name="ItemInformation" xml:space="preserve">
<value>உருப்படியின் தகவல்</value> <value>உருப்படி் தகவல்</value>
</data> </data>
<data name="ItemUpdated" xml:space="preserve"> <data name="ItemUpdated" xml:space="preserve">
<value>உருப்படி புதுப்பிக்கப்பட்டது.</value> <value>உருப்படி சேமிக்கப்பட்டது</value>
</data> </data>
<data name="Submitting" xml:space="preserve"> <data name="Submitting" xml:space="preserve">
<value>சமர்ப்பிக்கிறது...</value> <value>சமர்ப்பிக்கிறது...</value>
@@ -692,10 +692,10 @@
<comment>Message shown when interacting with the server</comment> <comment>Message shown when interacting with the server</comment>
</data> </data>
<data name="SyncingComplete" xml:space="preserve"> <data name="SyncingComplete" xml:space="preserve">
<value>ஒத்திசைவு நிறைவடைந்தது.</value> <value>ஒத்திசைவு நிறைவ</value>
</data> </data>
<data name="SyncingFailed" xml:space="preserve"> <data name="SyncingFailed" xml:space="preserve">
<value>ஒத்திசைவு தோல்வி.</value> <value>ஒத்திசைவு தோல்வி</value>
</data> </data>
<data name="SyncVaultNow" xml:space="preserve"> <data name="SyncVaultNow" xml:space="preserve">
<value>இப்போது பெட்டகத்தை ஒத்திசை</value> <value>இப்போது பெட்டகத்தை ஒத்திசை</value>
@@ -901,8 +901,8 @@
<value>அங்கீகார விசையை படிக்க இயலவில்லை.</value> <value>அங்கீகார விசையை படிக்க இயலவில்லை.</value>
</data> </data>
<data name="PointYourCameraAtTheQRCode" xml:space="preserve"> <data name="PointYourCameraAtTheQRCode" xml:space="preserve">
<value>Point your camera at the QR Code. <value>படக்கருவியை விரைவுக்குறியில் சுட்டிக்காட்டுக.
Scanning will happen automatically.</value> விருடல் தானாக நடக்கும்.</value>
</data> </data>
<data name="ScanQrTitle" xml:space="preserve"> <data name="ScanQrTitle" xml:space="preserve">
<value>வி.ம(QR) குறியீட்டை வருடல் செய்க</value> <value>வி.ம(QR) குறியீட்டை வருடல் செய்க</value>
@@ -917,7 +917,7 @@ Scanning will happen automatically.</value>
<value>TOTP ஐ நகலெடு</value> <value>TOTP ஐ நகலெடு</value>
</data> </data>
<data name="CopyTotpAutomaticallyDescription" xml:space="preserve"> <data name="CopyTotpAutomaticallyDescription" xml:space="preserve">
<value>If a login has an authenticator key, copy the TOTP verification code to your clip-board when you auto-fill the login.</value> <value>ஓர் உள்நுழைவிடம் ஆங்கீகரிப்பு விசை இருந்தால், நீங்கள் உள்நுழைவை தன்னிரப்பும்போது TOTP சிரிபார்ப்புக் குறியீட்டை நகலெடுக்கவும்.</value>
</data> </data>
<data name="CopyTotpAutomatically" xml:space="preserve"> <data name="CopyTotpAutomatically" xml:space="preserve">
<value>TOTPஐத் தானாக நகலெடு</value> <value>TOTPஐத் தானாக நகலெடு</value>
@@ -1144,7 +1144,7 @@ Scanning will happen automatically.</value>
<value>வலைத்தள படவுருக்களைக் காட்டு</value> <value>வலைத்தள படவுருக்களைக் காட்டு</value>
</data> </data>
<data name="ShowWebsiteIconsDescription" xml:space="preserve"> <data name="ShowWebsiteIconsDescription" xml:space="preserve">
<value>Show a recognizable image next to each login.</value> <value>ஒவ்வொரு உள்நுழைவுக்கு அடுத்தும் அறியம்படியான படத்தைக் காட்டு.</value>
</data> </data>
<data name="IconsUrl" xml:space="preserve"> <data name="IconsUrl" xml:space="preserve">
<value>படவுரு தேக்க உரலி</value> <value>படவுரு தேக்க உரலி</value>
@@ -1753,11 +1753,11 @@ Scanning will happen automatically.</value>
<value>நீங்கள் உண்மையில் குப்பைக்கு அனுப்ப விரும்புகிறீர்களா?</value> <value>நீங்கள் உண்மையில் குப்பைக்கு அனுப்ப விரும்புகிறீர்களா?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>உயிரியளவு பூட்டவிழ்த்தல் முடக்கப்பட்டது பிரதான கடவுச்சொல் சரிபார்ப்பு நிலுவையிலுள்ளது.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>தன்னிரப்பலுக்கான உயிரியளவு பூட்டவிழ்த்தல் முடக்கப்பட்டது பிரதான கடவுச்சொல் சரிபார்ப்பு நிலுவையிலுள்ளது.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>புத்துணர்வூட்டலில் ஒத்திசைவை இயக்கு</value> <value>புத்துணர்வூட்டலில் ஒத்திசைவை இயக்கு</value>
@@ -2143,6 +2143,12 @@ Scanning will happen automatically.</value>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>உம் நிறுவன கொள்கைகள் உம் பெட்டக நேரமுடிவைப் பாதிக்கிறது. அனுமதிக்கப்பட்ட அதிகபட்ச பெட்டக நேரமுடிவு {0} மணிநேரம் மற்றும் {1} நிமிடம(கள்) ஆகும்</value> <value>உம் நிறுவன கொள்கைகள் உம் பெட்டக நேரமுடிவைப் பாதிக்கிறது. அனுமதிக்கப்பட்ட அதிகபட்ச பெட்டக நேரமுடிவு {0} மணிநேரம் மற்றும் {1} நிமிடம(கள்) ஆகும்</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>உமது பெட்டக நேரமுடிவு உம் நிறுவனம் அமைத்த கட்டுப்பாடுகளை தாண்டுகிறது.</value> <value>உமது பெட்டக நேரமுடிவு உம் நிறுவனம் அமைத்த கட்டுப்பாடுகளை தாண்டுகிறது.</value>
</data> </data>
@@ -2319,73 +2325,73 @@ select Add TOTP to store the key safely</value>
<value>திரைப்பிடிப்பை நிச்சயமாக இயக்கவா?</value> <value>திரைப்பிடிப்பை நிச்சயமாக இயக்கவா?</value>
</data> </data>
<data name="LogInRequested" xml:space="preserve"> <data name="LogInRequested" xml:space="preserve">
<value>Login requested</value> <value>உள்நுழைவு கோரப்பட்டது</value>
</data> </data>
<data name="AreYouTryingToLogIn" xml:space="preserve"> <data name="AreYouTryingToLogIn" xml:space="preserve">
<value>Are you trying to log in?</value> <value>உள்நுழைய முயல்கிறீரா?</value>
</data> </data>
<data name="LogInAttemptByXOnY" xml:space="preserve"> <data name="LogInAttemptByXOnY" xml:space="preserve">
<value>Login attempt by {0} on {1}</value> <value>{0} ஆல் {1} இல் உள்நுழைவு முயற்சி</value>
</data> </data>
<data name="DeviceType" xml:space="preserve"> <data name="DeviceType" xml:space="preserve">
<value>Device type</value> <value>சாதன வகை</value>
</data> </data>
<data name="IpAddress" xml:space="preserve"> <data name="IpAddress" xml:space="preserve">
<value>IP address</value> <value>IP முகவரி</value>
</data> </data>
<data name="Time" xml:space="preserve"> <data name="Time" xml:space="preserve">
<value>Time</value> <value>நேரம்</value>
</data> </data>
<data name="Near" xml:space="preserve"> <data name="Near" xml:space="preserve">
<value>Near</value> <value>Near</value>
</data> </data>
<data name="ConfirmLogIn" xml:space="preserve"> <data name="ConfirmLogIn" xml:space="preserve">
<value>Confirm login</value> <value>உள்நுழைவை உறுதிபடுத்து</value>
</data> </data>
<data name="DenyLogIn" xml:space="preserve"> <data name="DenyLogIn" xml:space="preserve">
<value>Deny login</value> <value>உள்நுழைவை மறு</value>
</data> </data>
<data name="JustNow" xml:space="preserve"> <data name="JustNow" xml:space="preserve">
<value>Just now</value> <value>Just now</value>
</data> </data>
<data name="XMinutesAgo" xml:space="preserve"> <data name="XMinutesAgo" xml:space="preserve">
<value>{0} minutes ago</value> <value>{0} நிமிடங்கள் முன்பு</value>
</data> </data>
<data name="LogInAccepted" xml:space="preserve"> <data name="LogInAccepted" xml:space="preserve">
<value>Login confirmed</value> <value>உள்நுழைவு உறுதிபடுத்தப்பட்டது</value>
</data> </data>
<data name="LogInDenied" xml:space="preserve"> <data name="LogInDenied" xml:space="preserve">
<value>Login denied</value> <value>உள்நுழைவு மறுக்கப்பட்டது</value>
</data> </data>
<data name="ApproveLoginRequests" xml:space="preserve"> <data name="ApproveLoginRequests" xml:space="preserve">
<value>Approve login requests</value> <value>உள்நுழைவு கோரிக்கைகளை ஒப்புக்கொள்</value>
</data> </data>
<data name="UseThisDeviceToApproveLoginRequestsMadeFromOtherDevices" xml:space="preserve"> <data name="UseThisDeviceToApproveLoginRequestsMadeFromOtherDevices" xml:space="preserve">
<value>Use this device to approve login requests made from other devices.</value> <value>பிற சாதனங்களிலிருந்து செய்யப்பட்ட உள்நுழைவு கோரிக்கைகளை ஒப்புக்கொள்ள இச்சாதனத்தைப் பயன்படுத்து.</value>
</data> </data>
<data name="AllowNotifications" xml:space="preserve"> <data name="AllowNotifications" xml:space="preserve">
<value>Allow notifications</value> <value>அறிவிப்புகளை அனுமதி</value>
</data> </data>
<data name="ReceivePushNotificationsForNewLoginRequests" xml:space="preserve"> <data name="ReceivePushNotificationsForNewLoginRequests" xml:space="preserve">
<value>Receive push notifications for new login requests</value> <value>புது உள்நுழைவு கோரிக்கைகளுக்கு push அறிவிப்புகளைப் பெறு</value>
</data> </data>
<data name="NoThanks" xml:space="preserve"> <data name="NoThanks" xml:space="preserve">
<value>No thanks</value> <value>பரவாயில்லை வேண்டாம்</value>
</data> </data>
<data name="ConfimLogInAttempForX" xml:space="preserve"> <data name="ConfimLogInAttempForX" xml:space="preserve">
<value>Confirm login attempt for {0}</value> <value>{0}-க்கான உள்நுழைவு முயற்சியை உறுதுபடுத்து</value>
</data> </data>
<data name="AllNotifications" xml:space="preserve"> <data name="AllNotifications" xml:space="preserve">
<value>All notifications</value> <value>எல்லா அறிவிப்புகளும்</value>
</data> </data>
<data name="PasswordType" xml:space="preserve"> <data name="PasswordType" xml:space="preserve">
<value>Password type</value> <value>கடவுச்சொல் வகை</value>
</data> </data>
<data name="WhatWouldYouLikeToGenerate" xml:space="preserve"> <data name="WhatWouldYouLikeToGenerate" xml:space="preserve">
<value>What would you like to generate?</value> <value>என்ன உருவாக்க விரும்புகிறீர்?</value>
</data> </data>
<data name="UsernameType" xml:space="preserve"> <data name="UsernameType" xml:space="preserve">
<value>Username type</value> <value>பயனர்பெயர் வகை</value>
</data> </data>
<data name="PlusAddressedEmail" xml:space="preserve"> <data name="PlusAddressedEmail" xml:space="preserve">
<value>Plus addressed email</value> <value>Plus addressed email</value>
@@ -2471,18 +2477,18 @@ select Add TOTP to store the key safely</value>
<value>Bitwarden uses the Accessibility Service to search for login fields in apps and websites, then establish the appropriate field IDs for entering a username &amp; password when a match for the app or site is found. We do not store any of the information presented to us by the service, nor do we make any attempt to control any on-screen elements beyond text entry of credentials.</value> <value>Bitwarden uses the Accessibility Service to search for login fields in apps and websites, then establish the appropriate field IDs for entering a username &amp; password when a match for the app or site is found. We do not store any of the information presented to us by the service, nor do we make any attempt to control any on-screen elements beyond text entry of credentials.</value>
</data> </data>
<data name="Accept" xml:space="preserve"> <data name="Accept" xml:space="preserve">
<value>Accept</value> <value>ஏற்றுக்கொள்</value>
</data> </data>
<data name="Decline" xml:space="preserve"> <data name="Decline" xml:space="preserve">
<value>Decline</value> <value>மறு</value>
</data> </data>
<data name="LoginRequestHasAlreadyExpired" xml:space="preserve"> <data name="LoginRequestHasAlreadyExpired" xml:space="preserve">
<value>Login request has already expired.</value> <value>உள்நுழைவு கோரிக்கை ஏற்கனவே காலாவதியானது.</value>
</data> </data>
<data name="LoginAttemptFromXDoYouWantToSwitchToThisAccount" xml:space="preserve"> <data name="LoginAttemptFromXDoYouWantToSwitchToThisAccount" xml:space="preserve">
<value>Login attempt from: <value>இதிலிருந்து உள்நுழைவு முயற்சி:
{0} {0}
Do you want to switch to this account?</value> இக்கணக்கிற்கு மாற வேண்டுமா?</value>
</data> </data>
<data name="NewAroundHere" xml:space="preserve"> <data name="NewAroundHere" xml:space="preserve">
<value>New around here?</value> <value>New around here?</value>
@@ -2491,88 +2497,88 @@ Do you want to switch to this account?</value>
<value>Get master password hint</value> <value>Get master password hint</value>
</data> </data>
<data name="LoggingInAsX" xml:space="preserve"> <data name="LoggingInAsX" xml:space="preserve">
<value>Logging in as {0}</value> <value>{0} ஆக உள்நுழைகிறது</value>
</data> </data>
<data name="NotYou" xml:space="preserve"> <data name="NotYou" xml:space="preserve">
<value>Not you?</value> <value>நீங்கள் இல்லையா?</value>
</data> </data>
<data name="LogInWithMasterPassword" xml:space="preserve"> <data name="LogInWithMasterPassword" xml:space="preserve">
<value>Log in with master password</value> <value>பிரதான கடவுச்சொலுடன் உள்நுழை</value>
</data> </data>
<data name="LogInWithAnotherDevice" xml:space="preserve"> <data name="LogInWithAnotherDevice" xml:space="preserve">
<value>Log in with device</value> <value>சாதனத்துடன் உள்நுழை</value>
</data> </data>
<data name="LogInInitiated" xml:space="preserve"> <data name="LogInInitiated" xml:space="preserve">
<value>Log in initiated</value> <value>உள்நுழைவு துவங்கியது</value>
</data> </data>
<data name="ANotificationHasBeenSentToYourDevice" xml:space="preserve"> <data name="ANotificationHasBeenSentToYourDevice" xml:space="preserve">
<value>A notification has been sent to your device.</value> <value>உமது சாதனத்திற்கு ஓரறிவிப்பு அனுப்பப்பட்டது.</value>
</data> </data>
<data name="PleaseMakeSureYourVaultIsUnlockedAndTheFingerprintPhraseMatchesOnTheOtherDevice" xml:space="preserve"> <data name="PleaseMakeSureYourVaultIsUnlockedAndTheFingerprintPhraseMatchesOnTheOtherDevice" xml:space="preserve">
<value>Please make sure your vault is unlocked and the Fingerprint phrase matches on the other device.</value> <value>Please make sure your vault is unlocked and the Fingerprint phrase matches on the other device.</value>
</data> </data>
<data name="ResendNotification" xml:space="preserve"> <data name="ResendNotification" xml:space="preserve">
<value>Resend notification</value> <value>அறிவிப்பை மீண்டுமனுப்பு</value>
</data> </data>
<data name="NeedAnotherOption" xml:space="preserve"> <data name="NeedAnotherOption" xml:space="preserve">
<value>Need another option?</value> <value>வேறு வருப்பம் தேவையா?</value>
</data> </data>
<data name="ViewAllLoginOptions" xml:space="preserve"> <data name="ViewAllLoginOptions" xml:space="preserve">
<value>View all log in options</value> <value>எல்லா உள்நுழைவு விருப்பத்தையும் காண்க</value>
</data> </data>
<data name="ThisRequestIsNoLongerValid" xml:space="preserve"> <data name="ThisRequestIsNoLongerValid" xml:space="preserve">
<value>This request is no longer valid</value> <value>இக்கோரிக்கை இனி செல்லாது</value>
</data> </data>
<data name="PendingLogInRequests" xml:space="preserve"> <data name="PendingLogInRequests" xml:space="preserve">
<value>Pending login requests</value> <value>நிலுவையிலுள்ள உள்நுழைவு கோரிக்கைகள்</value>
</data> </data>
<data name="DeclineAllRequests" xml:space="preserve"> <data name="DeclineAllRequests" xml:space="preserve">
<value>Decline all requests</value> <value>எல்லா கோரிக்கைகளையும் மறு</value>
</data> </data>
<data name="AreYouSureYouWantToDeclineAllPendingLogInRequests" xml:space="preserve"> <data name="AreYouSureYouWantToDeclineAllPendingLogInRequests" xml:space="preserve">
<value>Are you sure you want to decline all pending login requests?</value> <value>நிலுவையிலுள்ள எல்லா கோரிக்கைகளையும் மறுக்க வேண்டுமா?</value>
</data> </data>
<data name="RequestsDeclined" xml:space="preserve"> <data name="RequestsDeclined" xml:space="preserve">
<value>Requests declined</value> <value>கோரிக்கைகள் மறுக்கப்பட்டன</value>
</data> </data>
<data name="NoPendingRequests" xml:space="preserve"> <data name="NoPendingRequests" xml:space="preserve">
<value>No pending requests</value> <value>நிலுவையிலுள்ள கோரிக்கைகள் இல்லை</value>
</data> </data>
<data name="EnableCamerPermissionToUseTheScanner" xml:space="preserve"> <data name="EnableCamerPermissionToUseTheScanner" xml:space="preserve">
<value>Enable camera permission to use the scanner</value> <value>வருடியைப் பயன்படுத்த படக்கருவி அனுமதியை இயக்கு</value>
</data> </data>
<data name="Language" xml:space="preserve"> <data name="Language" xml:space="preserve">
<value>Language</value> <value>மொழி</value>
</data> </data>
<data name="LanguageChangeXDescription" xml:space="preserve"> <data name="LanguageChangeXDescription" xml:space="preserve">
<value>The language has been changed to {0}. Please restart the app to see the change</value> <value>மொழி {0}-க்கு மாற்றப்பட்டது. மாற்றத்தைக் காண செயலியை மறுதுவக்கு</value>
</data> </data>
<data name="LanguageChangeRequiresAppRestart" xml:space="preserve"> <data name="LanguageChangeRequiresAppRestart" xml:space="preserve">
<value>Language change requires app restart</value> <value>மொழிமாற்றத்திற்கு செயலி மறுதுவக்கப்பட வேண்டும்</value>
</data> </data>
<data name="DefaultSystem" xml:space="preserve"> <data name="DefaultSystem" xml:space="preserve">
<value>Default (System)</value> <value>இயல்புநிலை (முறைமை)</value>
</data> </data>
<data name="Important" xml:space="preserve"> <data name="Important" xml:space="preserve">
<value>Important</value> <value>முக்கியம்</value>
</data> </data>
<data name="YourMasterPasswordCannotBeRecoveredIfYouForgetItXCharactersMinimum" xml:space="preserve"> <data name="YourMasterPasswordCannotBeRecoveredIfYouForgetItXCharactersMinimum" xml:space="preserve">
<value>Your master password cannot be recovered if you forget it! {0} characters minimum.</value> <value>மறந்துபோனால் பிரதான கடவுச்சொல்லை மீட்டெடுக்க முடியாது! குறைந்தபட்சம் {0} வரியுருக்கள்.</value>
</data> </data>
<data name="WeakMasterPassword" xml:space="preserve"> <data name="WeakMasterPassword" xml:space="preserve">
<value>Weak Master Password</value> <value>வலுவற்ற பிரதான கடவுச்சொல்</value>
</data> </data>
<data name="WeakPasswordIdentifiedUseAStrongPasswordToProtectYourAccount" xml:space="preserve"> <data name="WeakPasswordIdentifiedUseAStrongPasswordToProtectYourAccount" xml:space="preserve">
<value>Weak password identified. Use a strong password to protect your account. Are you sure you want to use a weak password?</value> <value>Weak password identified. Use a strong password to protect your account. Are you sure you want to use a weak password?</value>
</data> </data>
<data name="Weak" xml:space="preserve"> <data name="Weak" xml:space="preserve">
<value>Weak</value> <value>வலுவற்ற</value>
</data> </data>
<data name="Good" xml:space="preserve"> <data name="Good" xml:space="preserve">
<value>Good</value> <value>நல்ல</value>
</data> </data>
<data name="Strong" xml:space="preserve"> <data name="Strong" xml:space="preserve">
<value>Strong</value> <value>வலுவான</value>
</data> </data>
<data name="CheckKnownDataBreachesForThisPassword" xml:space="preserve"> <data name="CheckKnownDataBreachesForThisPassword" xml:space="preserve">
<value>Check known data breaches for this password</value> <value>Check known data breaches for this password</value>
@@ -2604,4 +2610,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Scanning will happen automatically.</value>
<value>Do you really want to send to the trash?</value> <value>Do you really want to send to the trash?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Allow sync on refresh</value> <value>Allow sync on refresh</value>
@@ -2141,7 +2141,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2604,4 +2610,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1759,11 +1759,11 @@ Scanning will happen automatically.</value>
<value>Do you really want to send to the trash?</value> <value>Do you really want to send to the trash?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biometric unlock disabled pending verification of master password.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Biometric unlock for autofill disabled pending verification of master password.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Allow sync on refresh</value> <value>Allow sync on refresh</value>
@@ -2148,7 +2148,13 @@ Scanning will happen automatically.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2611,4 +2617,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Kod otomatik olarak taranacaktır.</value>
<value>Bu kaydı çöp kutusuna göndermek istediğinizden emin misiniz?</value> <value>Bu kaydı çöp kutusuna göndermek istediğinizden emin misiniz?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Biyometrik kilit açma devre dışı. Ana parolanın doğrulanması bekleniyor.</value> <value>Bu hesap için biyometrik kilit açma devre dışı. Ana parolanın doğrulanması bekleniyor.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Otomatik doldurma için biyometrik kilit açma devre dışı. Ana parolanın doğrulanması bekleniyor.</value> <value>Otomatik doldurma biyometrik kilit açma devre dışı. Ana parolanın doğrulanması bekleniyor.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Yenileme sırasında eşitlemeye izin ver</value> <value>Yenileme sırasında eşitlemeye izin ver</value>
@@ -2140,7 +2140,13 @@ Kod otomatik olarak taranacaktır.</value>
<value>Bu kuruluşun sizi otomatik olarak parola sıfırlamaya ekleyen bir ilkesi bulunmakta. Bu ilkeye eklenmek, kuruluş yöneticilerinin ana parolanızı değiştirebilmesini sağlar.</value> <value>Bu kuruluşun sizi otomatik olarak parola sıfırlamaya ekleyen bir ilkesi bulunmakta. Bu ilkeye eklenmek, kuruluş yöneticilerinin ana parolanızı değiştirebilmesini sağlar.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Kuruluş ilkeleriniz kasa zaman aşımınızı etkiliyor. İzin verilen maksimum kasa zaman aşımı {0} saat {1} dakikadır</value> <value>Kuruluş ilkeleriniz izin verilen maksimum kasa zaman aşımını {0} saat {1} dakika olarak belirlemiş.</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Kuruluş ilkeleriniz kasa zaman aşımınızı etkiliyor. İzin verilen maksimum kasa zaman aşımı {0} saat {1} dakikadır. Kasa zaman aşımı eyleminiz {2} olarak ayarlanmış.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Kuruluş ilkeleriniz kasa zaman aşımı eyleminizi {0} olarak ayarlamış.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Kasa zaman aşımınız, kuruluşunuz tarafından belirlenen kısıtlamalarııyor.</value> <value>Kasa zaman aşımınız, kuruluşunuz tarafından belirlenen kısıtlamalarııyor.</value>
@@ -2602,4 +2608,10 @@ Bu hesaba geçmek ister misiniz?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Aramayla eşleşen kayıt yok</value> <value>Aramayla eşleşen kayıt yok</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Ana parolanız kuruluş ilkelerinizi karşılamıyor. Kasanıza erişmek için ana parolanızı güncellemelisiniz. Devam ettiğinizde oturumunuz kapanacak ve yeniden oturum açmanız gerekecektir. Diğer cihazlardaki aktif oturumlar bir saate kadar aktif kalabilir.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Mevcut ana parola</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@
<value>Ви дійсно хочете перенести до смітника?</value> <value>Ви дійсно хочете перенести до смітника?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Біометричне розблокування вимкнено. Очікується перевірка головного пароля.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Біометричне розблокування для автозаповнення вимкнено. Очікується перевірка головного пароля.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Дозволити синхронізацію жестом</value> <value>Дозволити синхронізацію жестом</value>
@@ -2140,7 +2140,13 @@
<value>Ця організація має корпоративну політику, яка автоматично розгортає вас на скидання пароля. Розгортання дозволятиме адміністраторам організації змінювати ваш головний пароль.</value> <value>Ця організація має корпоративну політику, яка автоматично розгортає вас на скидання пароля. Розгортання дозволятиме адміністраторам організації змінювати ваш головний пароль.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Політики вашої організації впливають на час очікування сховища. Максимальний дозволений час очікування сховища {0} годин, {1} хвилин</value> <value>Політикою вашої організації встановлено максимальний дозволений час очікування сховища {0} годин, {1} хвилин.</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Політики вашої організації впливають на час очікування сховища. Максимальний дозволений час очікування сховища {0} годин, {1} хвилин. Для часу очікування вашого сховища встановлена дія {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Політикою вашої організації встановлено дію для часу очікування сховища {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Час очікування сховища перевищує обмеження, встановлені вашою організацією.</value> <value>Час очікування сховища перевищує обмеження, встановлені вашою організацією.</value>
@@ -2603,4 +2609,10 @@
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>Немає записів, що відповідають пошуку</value> <value>Немає записів, що відповідають пошуку</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Ваш головний пароль не відповідає одній або більше політикам вашої організації. Щоб отримати доступ до сховища, вам необхідно оновити свій головний пароль зараз. Продовживши, ви вийдете з поточного сеансу, після чого потрібно буде повторно виконати вхід. Сеанси на інших пристроях можуть залишатися активними протягом однієї години.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Поточний головний пароль</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@ Quá trình quét sẽ diễn ra tự động.</value>
<value>Bạn có thực sự muốn đưa vào thùng rác?</value> <value>Bạn có thực sự muốn đưa vào thùng rác?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>Xác thực sinh trc học bị vô hiệu hoá trong khi chờ xác minh mật khẩu chính.</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>Phương thức xác thực sinh trắc học bị vô hiệu hóa do cần xác nhận mật khẩu chính.</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>Kích hoạt đồng bộ khi làm tươi(refresh)</value> <value>Kích hoạt đồng bộ khi làm tươi(refresh)</value>
@@ -2140,7 +2140,13 @@ Quá trình quét sẽ diễn ra tự động.</value>
<value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value> <value>This organization has an enterprise policy that will automatically enroll you in password reset. Enrollment will allow organization administrators to change your master password.</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s)</value> <value>Your organization policies have set your maximum allowed vault timeout to {0} hour(s) and {1} minute(s).</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>Your vault timeout exceeds the restrictions set by your organization.</value> <value>Your vault timeout exceeds the restrictions set by your organization.</value>
@@ -2603,4 +2609,10 @@ Do you want to switch to this account?</value>
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>Your master password does not meet one or more of your organization policies. In order to access the vault, you must update your master password now. Proceeding will log you out of your current session, requiring you to log back in. Active sessions on other devices may continue to remain active for up to one hour.</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>Current master password</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@
<value>您确定要将其发送到回收站吗?</value> <value>您确定要将其发送到回收站吗?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>生物识别解锁禁用,等待验证主密码。</value> <value>在验证主密码之前,此账户的生物识别解锁禁用。</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>在验证主密码之前,用于自动填充生物识别解锁功能将禁用。</value> <value>在验证主密码之前,此账户的自动填充生物识别解锁将禁用。</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>启用刷新时同步</value> <value>启用刷新时同步</value>
@@ -2140,7 +2140,13 @@
<value>此组织有一个企业策略,将为您自动注册密码重置。注册后将允许组织管理员更改您的主密码。</value> <value>此组织有一个企业策略,将为您自动注册密码重置。注册后将允许组织管理员更改您的主密码。</value>
</data> </data>
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>您的组织策略正在影响您的密码库超时时间。最大允许的密码库超时时间 {0} 小时 {1} 分钟</value> <value>您的组织策略已将您最大允许的密码库超时时间设置为 {0} 小时 {1} 分钟</value>
</data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>您的组织策略正在影响您的密码库超时时间。最大允许的密码库超时时间是 {0} 小时 {1} 分钟。您的密码库超时动作被设置为 {2}。</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>您的组织策略已将您的密码库超时动作设置为 {0}。</value>
</data> </data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>您的密码库超时时间超出了组织设置的限制。</value> <value>您的密码库超时时间超出了组织设置的限制。</value>
@@ -2603,4 +2609,10 @@
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>没有匹配搜索条件的项目</value> <value>没有匹配搜索条件的项目</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>您的主密码不符合您的组织策略要求。要访问密码库,必须立即更新您的主密码。继续操作将使您退出当前会话,要求您重新登录。其他设备上的活动会话可能会继续保持活动状态长达一小时。</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>当前主密码</value>
</data>
</root> </root>

View File

@@ -1752,11 +1752,11 @@
<value>您確定要傳送至垃圾桶嗎?</value> <value>您確定要傳送至垃圾桶嗎?</value>
<comment>Confirmation alert message when soft-deleting a cipher.</comment> <comment>Confirmation alert message when soft-deleting a cipher.</comment>
</data> </data>
<data name="BiometricInvalidated" xml:space="preserve"> <data name="AccountBiometricInvalidated" xml:space="preserve">
<value>已停用生物特徵辨識解鎖功能,請先驗證主密碼。</value> <value>Biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="BiometricInvalidatedExtension" xml:space="preserve"> <data name="AccountBiometricInvalidatedExtension" xml:space="preserve">
<value>在驗證主密碼之前,用於自動填入的生物特徵辨識解鎖將暫時停用。</value> <value>Autofill biometric unlock for this account is disabled pending verification of master password.</value>
</data> </data>
<data name="EnableSyncOnRefresh" xml:space="preserve"> <data name="EnableSyncOnRefresh" xml:space="preserve">
<value>啟用重新整理時同步</value> <value>啟用重新整理時同步</value>
@@ -2142,6 +2142,12 @@
<data name="VaultTimeoutPolicyInEffect" xml:space="preserve"> <data name="VaultTimeoutPolicyInEffect" xml:space="preserve">
<value>您的組織原則正在影響您的密碼庫逾時時間。密碼庫逾時時間最多可以設定到 {0} 小時 {1} 分鐘。</value> <value>您的組織原則正在影響您的密碼庫逾時時間。密碼庫逾時時間最多可以設定到 {0} 小時 {1} 分鐘。</value>
</data> </data>
<data name="VaultTimeoutPolicyWithActionInEffect" xml:space="preserve">
<value>Your organization policies are affecting your vault timeout. Maximum allowed vault timeout is {0} hour(s) and {1} minute(s). Your vault timeout action is set to {2}.</value>
</data>
<data name="VaultTimeoutActionPolicyInEffect" xml:space="preserve">
<value>Your organization policies have set your vault timeout action to {0}.</value>
</data>
<data name="VaultTimeoutToLarge" xml:space="preserve"> <data name="VaultTimeoutToLarge" xml:space="preserve">
<value>您的密碼庫逾時時間超過組織設定的限制。</value> <value>您的密碼庫逾時時間超過組織設定的限制。</value>
</data> </data>
@@ -2523,7 +2529,7 @@
<value>此請求已失效</value> <value>此請求已失效</value>
</data> </data>
<data name="PendingLogInRequests" xml:space="preserve"> <data name="PendingLogInRequests" xml:space="preserve">
<value>Pending login requests</value> <value>待處理的登入請求。</value>
</data> </data>
<data name="DeclineAllRequests" xml:space="preserve"> <data name="DeclineAllRequests" xml:space="preserve">
<value>Decline all requests</value> <value>Decline all requests</value>
@@ -2603,4 +2609,10 @@
<data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve"> <data name="ThereAreNoItemsThatMatchTheSearch" xml:space="preserve">
<value>There are no items that match the search</value> <value>There are no items that match the search</value>
</data> </data>
<data name="UpdateWeakMasterPasswordWarning" xml:space="preserve">
<value>您的主密碼不符合您的組織政策之一或多個要求。您必須立即更新您的主密碼以存取密碼庫。進行此操作將登出您目前的工作階段,需要您重新登入。其他裝置上的工作階段可能繼續長達一小時。</value>
</data>
<data name="CurrentMasterPassword" xml:space="preserve">
<value>目前主密碼</value>
</data>
</root> </root>

View File

@@ -6,6 +6,7 @@ using Bit.App.Models;
using Bit.App.Resources; using Bit.App.Resources;
using Bit.Core.Abstractions; using Bit.Core.Abstractions;
using Bit.Core.Enums; using Bit.Core.Enums;
using Bit.Core.Utilities;
using Plugin.Fingerprint; using Plugin.Fingerprint;
using Plugin.Fingerprint.Abstractions; using Plugin.Fingerprint.Abstractions;
using Xamarin.Essentials; using Xamarin.Essentials;
@@ -226,6 +227,20 @@ namespace Bit.App.Services
} }
} }
public async Task<bool> IsBiometricIntegrityValidAsync(string bioIntegritySrcKey = null)
{
bioIntegritySrcKey ??= Core.Constants.BiometricIntegritySourceKey;
var biometricService = ServiceContainer.Resolve<IBiometricService>();
if (!await biometricService.IsSystemBiometricIntegrityValidAsync(bioIntegritySrcKey))
{
return false;
}
var stateService = ServiceContainer.Resolve<IStateService>();
return await stateService.IsAccountBiometricIntegrityValidAsync(bioIntegritySrcKey);
}
public async Task<bool> AuthenticateBiometricAsync(string text = null, string fallbackText = null, public async Task<bool> AuthenticateBiometricAsync(string text = null, string fallbackText = null,
Action fallback = null) Action fallback = null)
{ {

View File

@@ -22,14 +22,14 @@ namespace Bit.App.Services
Constants.PushRegisteredTokenKey, Constants.PushRegisteredTokenKey,
Constants.LastBuildKey, Constants.LastBuildKey,
Constants.ClearCiphersCacheKey, Constants.ClearCiphersCacheKey,
Constants.BiometricIntegrityKey, Constants.BiometricIntegritySourceKey,
Constants.iOSExtensionActiveUserIdKey, Constants.iOSExtensionActiveUserIdKey,
Constants.iOSAutoFillClearCiphersCacheKey, Constants.iOSAutoFillClearCiphersCacheKey,
Constants.iOSAutoFillBiometricIntegrityKey, Constants.iOSAutoFillBiometricIntegritySourceKey,
Constants.iOSExtensionClearCiphersCacheKey, Constants.iOSExtensionClearCiphersCacheKey,
Constants.iOSExtensionBiometricIntegrityKey, Constants.iOSExtensionBiometricIntegritySourceKey,
Constants.iOSShareExtensionClearCiphersCacheKey, Constants.iOSShareExtensionClearCiphersCacheKey,
Constants.iOSShareExtensionBiometricIntegrityKey, Constants.iOSShareExtensionBiometricIntegritySourceKey,
Constants.RememberedEmailKey, Constants.RememberedEmailKey,
Constants.RememberedOrgIdentifierKey Constants.RememberedOrgIdentifierKey
}; };

View File

@@ -27,7 +27,7 @@ namespace Bit.Core.Abstractions
Task<ProfileResponse> GetProfileAsync(); Task<ProfileResponse> GetProfileAsync();
Task<SyncResponse> GetSyncAsync(); Task<SyncResponse> GetSyncAsync();
Task PostAccountKeysAsync(KeysRequest request); Task PostAccountKeysAsync(KeysRequest request);
Task PostAccountVerifyPasswordAsync(PasswordVerificationRequest request); Task<VerifyMasterPasswordResponse> PostAccountVerifyPasswordAsync(PasswordVerificationRequest request);
Task PostAccountRequestOTP(); Task PostAccountRequestOTP();
Task PostAccountVerifyOTPAsync(VerifyOTPRequest request); Task PostAccountVerifyOTPAsync(VerifyOTPRequest request);
Task<CipherResponse> PostCipherAsync(CipherRequest request); Task<CipherResponse> PostCipherAsync(CipherRequest request);
@@ -62,6 +62,7 @@ namespace Bit.Core.Abstractions
Task PutDeviceTokenAsync(string identifier, DeviceTokenRequest request); Task PutDeviceTokenAsync(string identifier, DeviceTokenRequest request);
Task PostEventsCollectAsync(IEnumerable<EventRequest> request); Task PostEventsCollectAsync(IEnumerable<EventRequest> request);
Task PutUpdateTempPasswordAsync(UpdateTempPasswordRequest request); Task PutUpdateTempPasswordAsync(UpdateTempPasswordRequest request);
Task PostPasswordAsync(PasswordRequest request);
Task DeleteAccountAsync(DeleteAccountRequest request); Task DeleteAccountAsync(DeleteAccountRequest request);
Task<OrganizationKeysResponse> GetOrganizationKeysAsync(string id); Task<OrganizationKeysResponse> GetOrganizationKeysAsync(string id);
Task<OrganizationAutoEnrollStatusResponse> GetOrganizationAutoEnrollStatusAsync(string identifier); Task<OrganizationAutoEnrollStatusResponse> GetOrganizationAutoEnrollStatusAsync(string identifier);

View File

@@ -4,7 +4,7 @@ namespace Bit.Core.Abstractions
{ {
public interface IBiometricService public interface IBiometricService
{ {
Task<bool> SetupBiometricAsync(string bioIntegrityKey = null); Task<bool> SetupBiometricAsync(string bioIntegritySrcKey = null);
Task<bool> ValidateIntegrityAsync(string bioIntegrityKey = null); Task<bool> IsSystemBiometricIntegrityValidAsync(string bioIntegritySrcKey = null);
} }
} }

View File

@@ -28,6 +28,7 @@ namespace Bit.Core.Abstractions
bool SupportsFido2(); bool SupportsFido2();
bool SupportsDuo(); bool SupportsDuo();
Task<bool> SupportsBiometricAsync(); Task<bool> SupportsBiometricAsync();
Task<bool> IsBiometricIntegrityValidAsync(string bioIntegritySrcKey = null);
Task<bool> AuthenticateBiometricAsync(string text = null, string fallbackText = null, Action fallback = null); Task<bool> AuthenticateBiometricAsync(string text = null, string fallbackText = null, Action fallback = null);
long GetActiveTime(); long GetActiveTime();
} }

View File

@@ -20,6 +20,7 @@ namespace Bit.Core.Abstractions
string orgId); string orgId);
Task<bool> PolicyAppliesToUser(PolicyType policyType, Func<Policy, bool> policyFilter = null, string userId = null); Task<bool> PolicyAppliesToUser(PolicyType policyType, Func<Policy, bool> policyFilter = null, string userId = null);
int? GetPolicyInt(Policy policy, string key); int? GetPolicyInt(Policy policy, string key);
string GetPolicyString(Policy policy, string key);
Task<bool> ShouldShowVaultFilterAsync(); Task<bool> ShouldShowVaultFilterAsync();
} }
} }

View File

@@ -31,6 +31,10 @@ namespace Bit.Core.Abstractions
Task SetBiometricUnlockAsync(bool? value, string userId = null); Task SetBiometricUnlockAsync(bool? value, string userId = null);
Task<bool> GetBiometricLockedAsync(string userId = null); Task<bool> GetBiometricLockedAsync(string userId = null);
Task SetBiometricLockedAsync(bool value, string userId = null); Task SetBiometricLockedAsync(bool value, string userId = null);
Task<string> GetSystemBiometricIntegrityState(string bioIntegritySrcKey);
Task SetSystemBiometricIntegrityState(string bioIntegritySrcKey, string systemBioIntegrityState);
Task<bool> IsAccountBiometricIntegrityValidAsync(string bioIntegritySrcKey, string userId = null);
Task SetAccountBiometricIntegrityValidAsync(string bioIntegritySrcKey, string userId = null);
Task<bool> CanAccessPremiumAsync(string userId = null); Task<bool> CanAccessPremiumAsync(string userId = null);
Task SetPersonalPremiumAsync(bool value, string userId = null); Task SetPersonalPremiumAsync(bool value, string userId = null);
Task<string> GetProtectedPinAsync(string userId = null); Task<string> GetProtectedPinAsync(string userId = null);
@@ -134,6 +138,8 @@ namespace Bit.Core.Abstractions
Task SetPushRegisteredTokenAsync(string value); Task SetPushRegisteredTokenAsync(string value);
Task<bool> GetUsesKeyConnectorAsync(string userId = null); Task<bool> GetUsesKeyConnectorAsync(string userId = null);
Task SetUsesKeyConnectorAsync(bool? value, string userId = null); Task SetUsesKeyConnectorAsync(bool? value, string userId = null);
Task<ForcePasswordResetReason?> GetForcePasswordResetReasonAsync(string userId = null);
Task SetForcePasswordResetReasonAsync(ForcePasswordResetReason? value, string userId = null);
Task<Dictionary<string, OrganizationData>> GetOrganizationsAsync(string userId = null); Task<Dictionary<string, OrganizationData>> GetOrganizationsAsync(string userId = null);
Task SetOrganizationsAsync(Dictionary<string, OrganizationData> organizations, string userId = null); Task SetOrganizationsAsync(Dictionary<string, OrganizationData> organizations, string userId = null);
Task<PasswordGenerationOptions> GetPasswordGenerationOptionsAsync(string userId = null); Task<PasswordGenerationOptions> GetPasswordGenerationOptionsAsync(string userId = null);

View File

@@ -22,5 +22,6 @@ namespace Bit.Core.Abstractions
Task LogOutAsync(bool userInitiated = true, string userId = null); Task LogOutAsync(bool userInitiated = true, string userId = null);
Task SetVaultTimeoutOptionsAsync(int? timeout, VaultTimeoutAction? action); Task SetVaultTimeoutOptionsAsync(int? timeout, VaultTimeoutAction? action);
Task<int?> GetVaultTimeout(string userId = null); Task<int?> GetVaultTimeout(string userId = null);
Task<VaultTimeoutAction?> GetVaultTimeoutAction(string userId = null);
} }
} }

View File

@@ -18,13 +18,13 @@
public const string LastBuildKey = "lastBuild"; public const string LastBuildKey = "lastBuild";
public const string AddSitePromptShownKey = "addSitePromptShown"; public const string AddSitePromptShownKey = "addSitePromptShown";
public const string ClearCiphersCacheKey = "clearCiphersCache"; public const string ClearCiphersCacheKey = "clearCiphersCache";
public const string BiometricIntegrityKey = "biometricIntegrityState"; public const string BiometricIntegritySourceKey = "biometricIntegritySource";
public const string iOSAutoFillClearCiphersCacheKey = "iOSAutoFillClearCiphersCache"; public const string iOSAutoFillClearCiphersCacheKey = "iOSAutoFillClearCiphersCache";
public const string iOSAutoFillBiometricIntegrityKey = "iOSAutoFillBiometricIntegrityState"; public const string iOSAutoFillBiometricIntegritySourceKey = "iOSAutoFillBiometricIntegritySource";
public const string iOSExtensionClearCiphersCacheKey = "iOSExtensionClearCiphersCache"; public const string iOSExtensionClearCiphersCacheKey = "iOSExtensionClearCiphersCache";
public const string iOSExtensionBiometricIntegrityKey = "iOSExtensionBiometricIntegrityState"; public const string iOSExtensionBiometricIntegritySourceKey = "iOSExtensionBiometricIntegritySource";
public const string iOSShareExtensionClearCiphersCacheKey = "iOSShareExtensionClearCiphersCache"; public const string iOSShareExtensionClearCiphersCacheKey = "iOSShareExtensionClearCiphersCache";
public const string iOSShareExtensionBiometricIntegrityKey = "iOSShareExtensionBiometricIntegrityState"; public const string iOSShareExtensionBiometricIntegritySourceKey = "iOSShareExtensionBiometricIntegritySource";
public const string iOSExtensionActiveUserIdKey = "iOSExtensionActiveUserId"; public const string iOSExtensionActiveUserIdKey = "iOSExtensionActiveUserId";
public const string EventCollectionKey = "eventCollection"; public const string EventCollectionKey = "eventCollection";
public const string RememberedEmailKey = "rememberedEmail"; public const string RememberedEmailKey = "rememberedEmail";
@@ -49,6 +49,7 @@
public const string OtpAuthScheme = "otpauth"; public const string OtpAuthScheme = "otpauth";
public const string AppLocaleKey = "appLocale"; public const string AppLocaleKey = "appLocale";
public const string ClearSensitiveFields = "clearSensitiveFields"; public const string ClearSensitiveFields = "clearSensitiveFields";
public const string ForceUpdatePassword = "forceUpdatePassword";
public const int SelectFileRequestCode = 42; public const int SelectFileRequestCode = 42;
public const int SelectFilePermissionRequestCode = 43; public const int SelectFilePermissionRequestCode = 43;
public const int SaveFileRequestCode = 44; public const int SaveFileRequestCode = 44;
@@ -109,6 +110,8 @@
public static string ProtectedPinKey(string userId) => $"protectedPin_{userId}"; public static string ProtectedPinKey(string userId) => $"protectedPin_{userId}";
public static string LastSyncKey(string userId) => $"lastSync_{userId}"; public static string LastSyncKey(string userId) => $"lastSync_{userId}";
public static string BiometricUnlockKey(string userId) => $"biometricUnlock_{userId}"; public static string BiometricUnlockKey(string userId) => $"biometricUnlock_{userId}";
public static string AccountBiometricIntegrityValidKey(string userId, string systemBioIntegrityState) =>
$"accountBiometricIntegrityValid_{userId}_{systemBioIntegrityState}";
public static string ApprovePasswordlessLoginsKey(string userId) => $"approvePasswordlessLogins_{userId}"; public static string ApprovePasswordlessLoginsKey(string userId) => $"approvePasswordlessLogins_{userId}";
public static string UsernameGenOptionsKey(string userId) => $"usernameGenerationOptions_{userId}"; public static string UsernameGenOptionsKey(string userId) => $"usernameGenerationOptions_{userId}";
public static string PushLastRegistrationDateKey(string userId) => $"pushLastRegistrationDate_{userId}"; public static string PushLastRegistrationDateKey(string userId) => $"pushLastRegistrationDate_{userId}";

View File

@@ -52,6 +52,7 @@ namespace Bit.Core.Models.Domain
EmailVerified = copy.EmailVerified; EmailVerified = copy.EmailVerified;
HasPremiumPersonally = copy.HasPremiumPersonally; HasPremiumPersonally = copy.HasPremiumPersonally;
AvatarColor = copy.AvatarColor; AvatarColor = copy.AvatarColor;
ForcePasswordResetReason = copy.ForcePasswordResetReason;
} }
public string UserId; public string UserId;
@@ -66,6 +67,7 @@ namespace Bit.Core.Models.Domain
public int? KdfParallelism; public int? KdfParallelism;
public bool? EmailVerified; public bool? EmailVerified;
public bool? HasPremiumPersonally; public bool? HasPremiumPersonally;
public ForcePasswordResetReason? ForcePasswordResetReason;
} }
public class AccountTokens public class AccountTokens

View File

@@ -0,0 +1,16 @@
namespace Bit.Core.Models.Domain
{
public enum ForcePasswordResetReason
{
/// <summary>
/// Occurs when an organization admin forces a user to reset their password.
/// </summary>
AdminForcePasswordReset,
/// <summary>
/// Occurs when a user logs in with a master password that does not meet an organization's master password
/// policy that is enforced on login.
/// </summary>
WeakMasterPasswordOnLogin
}
}

View File

@@ -8,6 +8,7 @@
public bool RequireLower { get; set; } public bool RequireLower { get; set; }
public bool RequireNumbers { get; set; } public bool RequireNumbers { get; set; }
public bool RequireSpecial { get; set; } public bool RequireSpecial { get; set; }
public bool EnforceOnLogin { get; set; }
public bool InEffect() public bool InEffect()
{ {

View File

@@ -0,0 +1,10 @@
namespace Bit.Core.Models.Request
{
public class PasswordRequest
{
public string MasterPasswordHash { get; set; }
public string NewMasterPasswordHash { get; set; }
public string MasterPasswordHint { get; set; }
public string Key { get; set; }
}
}

View File

@@ -1,4 +1,6 @@
using Bit.Core.Enums; using System.Collections.Generic;
using Bit.Core.Enums;
using Bit.Core.Models.Domain;
using Newtonsoft.Json; using Newtonsoft.Json;
namespace Bit.Core.Models.Response namespace Bit.Core.Models.Response
@@ -24,6 +26,7 @@ namespace Bit.Core.Models.Response
public int? KdfParallelism { get; set; } public int? KdfParallelism { get; set; }
public bool ForcePasswordReset { get; set; } public bool ForcePasswordReset { get; set; }
public string KeyConnectorUrl { get; set; } public string KeyConnectorUrl { get; set; }
public MasterPasswordPolicyOptions MasterPasswordPolicy { get; set; }
[JsonIgnore] [JsonIgnore]
public KdfConfig KdfConfig => new KdfConfig(Kdf, KdfIterations, KdfMemory, KdfParallelism); public KdfConfig KdfConfig => new KdfConfig(Kdf, KdfIterations, KdfMemory, KdfParallelism);
} }

View File

@@ -1,5 +1,6 @@
using System.Collections.Generic; using System.Collections.Generic;
using Bit.Core.Enums; using Bit.Core.Enums;
using Bit.Core.Models.Domain;
using Newtonsoft.Json; using Newtonsoft.Json;
namespace Bit.Core.Models.Response namespace Bit.Core.Models.Response
@@ -8,6 +9,7 @@ namespace Bit.Core.Models.Response
{ {
public List<TwoFactorProviderType> TwoFactorProviders { get; set; } public List<TwoFactorProviderType> TwoFactorProviders { get; set; }
public Dictionary<TwoFactorProviderType, Dictionary<string, object>> TwoFactorProviders2 { get; set; } public Dictionary<TwoFactorProviderType, Dictionary<string, object>> TwoFactorProviders2 { get; set; }
public MasterPasswordPolicyOptions MasterPasswordPolicy { get; set; }
[JsonProperty("CaptchaBypassToken")] [JsonProperty("CaptchaBypassToken")]
public string CaptchaToken { get; set; } public string CaptchaToken { get; set; }
} }

View File

@@ -0,0 +1,9 @@
using Bit.Core.Models.Domain;
namespace Bit.Core.Models.Response
{
public class VerifyMasterPasswordResponse
{
public MasterPasswordPolicyOptions MasterPasswordPolicy { get; set; }
}
}

View File

@@ -176,10 +176,10 @@ namespace Bit.Core.Services
return SendAsync<KeysRequest, object>(HttpMethod.Post, "/accounts/keys", request, true, false); return SendAsync<KeysRequest, object>(HttpMethod.Post, "/accounts/keys", request, true, false);
} }
public Task PostAccountVerifyPasswordAsync(PasswordVerificationRequest request) public Task<VerifyMasterPasswordResponse> PostAccountVerifyPasswordAsync(PasswordVerificationRequest request)
{ {
return SendAsync<PasswordVerificationRequest, object>(HttpMethod.Post, "/accounts/verify-password", request, return SendAsync<PasswordVerificationRequest, VerifyMasterPasswordResponse>(HttpMethod.Post, "/accounts/verify-password", request,
true, false); true, true);
} }
public Task PostAccountRequestOTP() public Task PostAccountRequestOTP()
@@ -199,6 +199,11 @@ namespace Bit.Core.Services
request, true, false); request, true, false);
} }
public Task PostPasswordAsync(PasswordRequest request)
{
return SendAsync<PasswordRequest, object>(HttpMethod.Post, "/accounts/password", request, true, false);
}
public Task DeleteAccountAsync(DeleteAccountRequest request) public Task DeleteAccountAsync(DeleteAccountRequest request)
{ {
return SendAsync<DeleteAccountRequest, object>(HttpMethod.Delete, "/accounts", request, true, false); return SendAsync<DeleteAccountRequest, object>(HttpMethod.Delete, "/accounts", request, true, false);
@@ -767,6 +772,12 @@ namespace Bit.Core.Services
break; break;
case ForwardedEmailServiceType.FirefoxRelay: case ForwardedEmailServiceType.FirefoxRelay:
requestMessage.Headers.Add("Authorization", $"Token {config.ApiToken}"); requestMessage.Headers.Add("Authorization", $"Token {config.ApiToken}");
requestMessage.Content = new StringContent(JsonConvert.SerializeObject(
new
{
enabled = true,
description = "Generated by Bitwarden."
}), Encoding.UTF8, "application/json");
break; break;
case ForwardedEmailServiceType.SimpleLogin: case ForwardedEmailServiceType.SimpleLogin:
requestMessage.Headers.Add("Authentication", config.ApiToken); requestMessage.Headers.Add("Authentication", config.ApiToken);

View File

@@ -26,11 +26,16 @@ namespace Bit.Core.Services
private readonly IMessagingService _messagingService; private readonly IMessagingService _messagingService;
private readonly IKeyConnectorService _keyConnectorService; private readonly IKeyConnectorService _keyConnectorService;
private readonly IPasswordGenerationService _passwordGenerationService; private readonly IPasswordGenerationService _passwordGenerationService;
private readonly IPolicyService _policyService;
private readonly bool _setCryptoKeys; private readonly bool _setCryptoKeys;
private readonly LazyResolve<IWatchDeviceService> _watchDeviceService = new LazyResolve<IWatchDeviceService>(); private readonly LazyResolve<IWatchDeviceService> _watchDeviceService = new LazyResolve<IWatchDeviceService>();
private SymmetricCryptoKey _key; private SymmetricCryptoKey _key;
private string _authedUserId;
private MasterPasswordPolicyOptions _masterPasswordPolicy;
private ForcePasswordResetReason? _2faForcePasswordResetReason;
public AuthService( public AuthService(
ICryptoService cryptoService, ICryptoService cryptoService,
ICryptoFunctionService cryptoFunctionService, ICryptoFunctionService cryptoFunctionService,
@@ -44,6 +49,7 @@ namespace Bit.Core.Services
IVaultTimeoutService vaultTimeoutService, IVaultTimeoutService vaultTimeoutService,
IKeyConnectorService keyConnectorService, IKeyConnectorService keyConnectorService,
IPasswordGenerationService passwordGenerationService, IPasswordGenerationService passwordGenerationService,
IPolicyService policyService,
bool setCryptoKeys = true) bool setCryptoKeys = true)
{ {
_cryptoService = cryptoService; _cryptoService = cryptoService;
@@ -57,6 +63,7 @@ namespace Bit.Core.Services
_messagingService = messagingService; _messagingService = messagingService;
_keyConnectorService = keyConnectorService; _keyConnectorService = keyConnectorService;
_passwordGenerationService = passwordGenerationService; _passwordGenerationService = passwordGenerationService;
_policyService = policyService;
_setCryptoKeys = setCryptoKeys; _setCryptoKeys = setCryptoKeys;
TwoFactorProviders = new Dictionary<TwoFactorProviderType, TwoFactorProvider>(); TwoFactorProviders = new Dictionary<TwoFactorProviderType, TwoFactorProvider>();
@@ -136,11 +143,56 @@ namespace Bit.Core.Services
public async Task<AuthResult> LogInAsync(string email, string masterPassword, string captchaToken) public async Task<AuthResult> LogInAsync(string email, string masterPassword, string captchaToken)
{ {
SelectedTwoFactorProviderType = null; SelectedTwoFactorProviderType = null;
_2faForcePasswordResetReason = null;
var key = await MakePreloginKeyAsync(masterPassword, email); var key = await MakePreloginKeyAsync(masterPassword, email);
var hashedPassword = await _cryptoService.HashPasswordAsync(masterPassword, key); var hashedPassword = await _cryptoService.HashPasswordAsync(masterPassword, key);
var localHashedPassword = await _cryptoService.HashPasswordAsync(masterPassword, key, HashPurpose.LocalAuthorization); var localHashedPassword = await _cryptoService.HashPasswordAsync(masterPassword, key, HashPurpose.LocalAuthorization);
return await LogInHelperAsync(email, hashedPassword, localHashedPassword, null, null, null, key, null, null, var result = await LogInHelperAsync(email, hashedPassword, localHashedPassword, null, null, null, key, null, null, null, captchaToken);
null, captchaToken);
if (await RequirePasswordChangeAsync(email, masterPassword))
{
if (!string.IsNullOrEmpty(_authedUserId))
{
// Authentication was successful, save the WeakMasterPasswordOnLogin flag for the user
result.ForcePasswordReset = true;
await _stateService.SetForcePasswordResetReasonAsync(
ForcePasswordResetReason.WeakMasterPasswordOnLogin, _authedUserId);
}
else
{
// Authentication not fully successful (likely 2FA), store flag for LogInTwoFactorAsync()
_2faForcePasswordResetReason = ForcePasswordResetReason.WeakMasterPasswordOnLogin;
}
}
return result;
}
/// <summary>
/// Evaluates the supplied master password against the master password policy provided by the Identity response.
/// </summary>
/// <param name="email"></param>
/// <param name="masterPassword"></param>
/// <returns>True if the master password does NOT meet any policy requirements, false otherwise (or if no policy present)</returns>
private async Task<bool> RequirePasswordChangeAsync(string email, string masterPassword)
{
// No policy with EnforceOnLogin enabled, we're done.
if (!(_masterPasswordPolicy is { EnforceOnLogin: true }))
{
return false;
}
var strength = _passwordGenerationService.PasswordStrength(
masterPassword,
_passwordGenerationService.GetPasswordStrengthUserInput(email)
)?.Score;
if (!strength.HasValue)
{
return false;
}
return !await _policyService.EvaluateMasterPassword(strength.Value, masterPassword, _masterPasswordPolicy);
} }
public async Task<AuthResult> LogInPasswordlessAsync(string email, string accessCode, string authRequestId, byte[] decryptionKey, string userKeyCiphered, string localHashedPasswordCiphered) public async Task<AuthResult> LogInPasswordlessAsync(string email, string accessCode, string authRequestId, byte[] decryptionKey, string userKeyCiphered, string localHashedPasswordCiphered)
@@ -157,15 +209,26 @@ namespace Bit.Core.Services
return await LogInHelperAsync(null, null, null, code, codeVerifier, redirectUrl, null, orgId: orgId); return await LogInHelperAsync(null, null, null, code, codeVerifier, redirectUrl, null, orgId: orgId);
} }
public Task<AuthResult> LogInTwoFactorAsync(TwoFactorProviderType twoFactorProvider, string twoFactorToken, public async Task<AuthResult> LogInTwoFactorAsync(TwoFactorProviderType twoFactorProvider, string twoFactorToken,
string captchaToken, bool? remember = null) string captchaToken, bool? remember = null)
{ {
if (captchaToken != null) if (captchaToken != null)
{ {
CaptchaToken = captchaToken; CaptchaToken = captchaToken;
} }
return LogInHelperAsync(Email, MasterPasswordHash, LocalMasterPasswordHash, Code, CodeVerifier, SsoRedirectUrl, _key, var result = await LogInHelperAsync(Email, MasterPasswordHash, LocalMasterPasswordHash, Code, CodeVerifier, SsoRedirectUrl, _key,
twoFactorProvider, twoFactorToken, remember, CaptchaToken, authRequestId: AuthRequestId); twoFactorProvider, twoFactorToken, remember, CaptchaToken, authRequestId: AuthRequestId);
// If we successfully authenticated and we have a saved _2faForcePasswordResetReason reason from LogInAsync()
if (!string.IsNullOrEmpty(_authedUserId) && _2faForcePasswordResetReason.HasValue)
{
// Save the forcePasswordReset reason with the state service to force a password reset for the user
result.ForcePasswordReset = true;
await _stateService.SetForcePasswordResetReasonAsync(
_2faForcePasswordResetReason, _authedUserId);
}
return result;
} }
public async Task<AuthResult> LogInCompleteAsync(string email, string masterPassword, public async Task<AuthResult> LogInCompleteAsync(string email, string masterPassword,
@@ -367,6 +430,7 @@ namespace Bit.Core.Services
TwoFactorProvidersData = response.TwoFactorResponse.TwoFactorProviders2; TwoFactorProvidersData = response.TwoFactorResponse.TwoFactorProviders2;
result.TwoFactorProviders = response.TwoFactorResponse.TwoFactorProviders2; result.TwoFactorProviders = response.TwoFactorResponse.TwoFactorProviders2;
CaptchaToken = response.TwoFactorResponse.CaptchaToken; CaptchaToken = response.TwoFactorResponse.CaptchaToken;
_masterPasswordPolicy = response.TwoFactorResponse.MasterPasswordPolicy;
await _tokenService.ClearTwoFactorTokenAsync(email); await _tokenService.ClearTwoFactorTokenAsync(email);
return result; return result;
} }
@@ -374,6 +438,7 @@ namespace Bit.Core.Services
var tokenResponse = response.TokenResponse; var tokenResponse = response.TokenResponse;
result.ResetMasterPassword = tokenResponse.ResetMasterPassword; result.ResetMasterPassword = tokenResponse.ResetMasterPassword;
result.ForcePasswordReset = tokenResponse.ForcePasswordReset; result.ForcePasswordReset = tokenResponse.ForcePasswordReset;
_masterPasswordPolicy = tokenResponse.MasterPasswordPolicy;
if (tokenResponse.TwoFactorToken != null) if (tokenResponse.TwoFactorToken != null)
{ {
await _tokenService.SetTwoFactorTokenAsync(tokenResponse.TwoFactorToken, email); await _tokenService.SetTwoFactorTokenAsync(tokenResponse.TwoFactorToken, email);
@@ -391,6 +456,9 @@ namespace Bit.Core.Services
KdfMemory = tokenResponse.KdfMemory, KdfMemory = tokenResponse.KdfMemory,
KdfParallelism = tokenResponse.KdfParallelism, KdfParallelism = tokenResponse.KdfParallelism,
HasPremiumPersonally = _tokenService.GetPremium(), HasPremiumPersonally = _tokenService.GetPremium(),
ForcePasswordResetReason = result.ForcePasswordReset
? ForcePasswordResetReason.AdminForcePasswordReset
: (ForcePasswordResetReason?)null,
}, },
new Account.AccountTokens() new Account.AccountTokens()
{ {
@@ -473,6 +541,7 @@ namespace Bit.Core.Services
} }
_authedUserId = _tokenService.GetUserId();
await _stateService.SetBiometricLockedAsync(false); await _stateService.SetBiometricLockedAsync(false);
_messagingService.Send("loggedIn"); _messagingService.Send("loggedIn");
return result; return result;
@@ -490,6 +559,8 @@ namespace Bit.Core.Services
SsoRedirectUrl = null; SsoRedirectUrl = null;
TwoFactorProvidersData = null; TwoFactorProvidersData = null;
SelectedTwoFactorProviderType = null; SelectedTwoFactorProviderType = null;
_masterPasswordPolicy = null;
_authedUserId = null;
} }
public async Task<List<PasswordlessLoginResponse>> GetPasswordlessLoginRequestsAsync() public async Task<List<PasswordlessLoginResponse>> GetPasswordlessLoginRequestsAsync()

Some files were not shown because too many files have changed in this diff Show More