mirror of
https://github.com/dani-garcia/vaultwarden.git
synced 2026-04-14 09:54:28 +03:00
Compare commits
1 Commits
1.35.6
...
revert-703
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0a77776a8b |
8
.github/workflows/release.yml
vendored
8
.github/workflows/release.yml
vendored
@@ -38,9 +38,7 @@ jobs:
|
|||||||
docker-build:
|
docker-build:
|
||||||
name: Build Vaultwarden containers
|
name: Build Vaultwarden containers
|
||||||
if: ${{ github.repository == 'dani-garcia/vaultwarden' }}
|
if: ${{ github.repository == 'dani-garcia/vaultwarden' }}
|
||||||
environment:
|
environment: release
|
||||||
name: release
|
|
||||||
deployment: false
|
|
||||||
permissions:
|
permissions:
|
||||||
packages: write # Needed to upload packages and artifacts
|
packages: write # Needed to upload packages and artifacts
|
||||||
contents: read
|
contents: read
|
||||||
@@ -251,9 +249,7 @@ jobs:
|
|||||||
name: Merge manifests
|
name: Merge manifests
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: docker-build
|
needs: docker-build
|
||||||
environment:
|
environment: release
|
||||||
name: release
|
|
||||||
deployment: false
|
|
||||||
permissions:
|
permissions:
|
||||||
packages: write # Needed to upload packages and artifacts
|
packages: write # Needed to upload packages and artifacts
|
||||||
attestations: write # Needed to generate an artifact attestation for a build
|
attestations: write # Needed to generate an artifact attestation for a build
|
||||||
|
|||||||
15
Cargo.lock
generated
15
Cargo.lock
generated
@@ -2405,15 +2405,16 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "hyper-rustls"
|
name = "hyper-rustls"
|
||||||
version = "0.27.8"
|
version = "0.27.7"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "c2b52f86d1d4bc0d6b4e6826d960b1b333217e07d36b882dca570a5e1c48895b"
|
checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"http 1.4.0",
|
"http 1.4.0",
|
||||||
"hyper 1.9.0",
|
"hyper 1.9.0",
|
||||||
"hyper-util",
|
"hyper-util",
|
||||||
"rustls 0.23.37",
|
"rustls 0.23.37",
|
||||||
"rustls-native-certs",
|
"rustls-native-certs",
|
||||||
|
"rustls-pki-types",
|
||||||
"tokio",
|
"tokio",
|
||||||
"tokio-rustls 0.26.4",
|
"tokio-rustls 0.26.4",
|
||||||
"tower-service",
|
"tower-service",
|
||||||
@@ -3721,9 +3722,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "pkg-config"
|
name = "pkg-config"
|
||||||
version = "0.3.33"
|
version = "0.3.32"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "19f132c84eca552bf34cab8ec81f1c1dcc229b811638f9d283dceabe58c5569e"
|
checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "polling"
|
name = "polling"
|
||||||
@@ -4408,12 +4409,12 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rtoolbox"
|
name = "rtoolbox"
|
||||||
version = "0.0.4"
|
version = "0.0.3"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "327b72899159dfae8060c51a1f6aebe955245bcd9cc4997eed0f623caea022e4"
|
checksum = "a7cc970b249fbe527d6e02e0a227762c9108b2f49d81094fe357ffc6d14d7f6f"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"libc",
|
"libc",
|
||||||
"windows-sys 0.59.0",
|
"windows-sys 0.52.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
|||||||
@@ -742,7 +742,7 @@ async fn twofactor_auth(
|
|||||||
|
|
||||||
TwoFactorIncomplete::mark_incomplete(&user.uuid, &device.uuid, &device.name, device.atype, ip, conn).await?;
|
TwoFactorIncomplete::mark_incomplete(&user.uuid, &device.uuid, &device.name, device.atype, ip, conn).await?;
|
||||||
|
|
||||||
let mut twofactor_ids: Vec<_> = twofactors
|
let twofactor_ids: Vec<_> = twofactors
|
||||||
.iter()
|
.iter()
|
||||||
.filter_map(|tf| {
|
.filter_map(|tf| {
|
||||||
let provider_type = TwoFactorType::from_i32(tf.atype)?;
|
let provider_type = TwoFactorType::from_i32(tf.atype)?;
|
||||||
@@ -753,18 +753,6 @@ async fn twofactor_auth(
|
|||||||
err!("No enabled and usable two factor providers are available for this account")
|
err!("No enabled and usable two factor providers are available for this account")
|
||||||
}
|
}
|
||||||
|
|
||||||
// Add TwoFactorTypes which are not stored as a record but might be enabled
|
|
||||||
// Since these types could also be not valid, we do some custom checks here
|
|
||||||
twofactor_ids.extend(
|
|
||||||
[
|
|
||||||
(!CONFIG.disable_2fa_remember() && device.twofactor_remember.is_some())
|
|
||||||
.then_some(TwoFactorType::Remember as i32),
|
|
||||||
user.totp_recover.is_some().then_some(TwoFactorType::RecoveryCode as i32),
|
|
||||||
]
|
|
||||||
.into_iter()
|
|
||||||
.flatten(),
|
|
||||||
);
|
|
||||||
|
|
||||||
let selected_id = data.two_factor_provider.unwrap_or(twofactor_ids[0]); // If we aren't given a two factor provider, assume the first one
|
let selected_id = data.two_factor_provider.unwrap_or(twofactor_ids[0]); // If we aren't given a two factor provider, assume the first one
|
||||||
if !twofactor_ids.contains(&selected_id) {
|
if !twofactor_ids.contains(&selected_id) {
|
||||||
err_json!(
|
err_json!(
|
||||||
|
|||||||
Reference in New Issue
Block a user