mirror of
https://github.com/dani-garcia/vaultwarden.git
synced 2024-12-22 22:45:12 +01:00
Prepare for repo to org move
This PR prepares this repo to be moved to the Vaultwarden organization. Signed-off-by: BlackDex <black.dex@gmail.com>
This commit is contained in:
parent
4d6d3443ae
commit
94774a8424
23 changed files with 63 additions and 63 deletions
|
@ -93,7 +93,7 @@
|
||||||
|
|
||||||
## Enables push notifications (requires key and id from https://bitwarden.com/host)
|
## Enables push notifications (requires key and id from https://bitwarden.com/host)
|
||||||
## Details about mobile client push notification:
|
## Details about mobile client push notification:
|
||||||
## - https://github.com/dani-garcia/vaultwarden/wiki/Enabling-Mobile-Client-push-notification
|
## - https://github.com/vaultwarden/vaultwarden/wiki/Enabling-Mobile-Client-push-notification
|
||||||
# PUSH_ENABLED=false
|
# PUSH_ENABLED=false
|
||||||
# PUSH_INSTALLATION_ID=CHANGEME
|
# PUSH_INSTALLATION_ID=CHANGEME
|
||||||
# PUSH_INSTALLATION_KEY=CHANGEME
|
# PUSH_INSTALLATION_KEY=CHANGEME
|
||||||
|
@ -173,8 +173,8 @@
|
||||||
## For U2F to work, the server must use HTTPS, you can use Let's Encrypt for free certs
|
## For U2F to work, the server must use HTTPS, you can use Let's Encrypt for free certs
|
||||||
## To use HTTPS, the recommended way is to put Vaultwarden behind a reverse proxy
|
## To use HTTPS, the recommended way is to put Vaultwarden behind a reverse proxy
|
||||||
## Details:
|
## Details:
|
||||||
## - https://github.com/dani-garcia/vaultwarden/wiki/Enabling-HTTPS
|
## - https://github.com/vaultwarden/vaultwarden/wiki/Enabling-HTTPS
|
||||||
## - https://github.com/dani-garcia/vaultwarden/wiki/Proxy-examples
|
## - https://github.com/vaultwarden/vaultwarden/wiki/Proxy-examples
|
||||||
## For development
|
## For development
|
||||||
# DOMAIN=http://localhost
|
# DOMAIN=http://localhost
|
||||||
## For public server
|
## For public server
|
||||||
|
@ -382,7 +382,7 @@
|
||||||
|
|
||||||
## Token for the admin interface, preferably an Argon2 PCH string
|
## Token for the admin interface, preferably an Argon2 PCH string
|
||||||
## Vaultwarden has a built-in generator by calling `vaultwarden hash`
|
## Vaultwarden has a built-in generator by calling `vaultwarden hash`
|
||||||
## For details see: https://github.com/dani-garcia/vaultwarden/wiki/Enabling-admin-page#secure-the-admin_token
|
## For details see: https://github.com/vaultwarden/vaultwarden/wiki/Enabling-admin-page#secure-the-admin_token
|
||||||
## If not set, the admin panel is disabled
|
## If not set, the admin panel is disabled
|
||||||
## New Argon2 PHC string
|
## New Argon2 PHC string
|
||||||
## Note that for some environments, like docker-compose you need to escape all the dollar signs `$` with an extra dollar sign like `$$`
|
## Note that for some environments, like docker-compose you need to escape all the dollar signs `$` with an extra dollar sign like `$$`
|
||||||
|
|
6
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
6
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
|
@ -10,13 +10,13 @@ body:
|
||||||
|
|
||||||
Please *do not* submit feature requests or ask for help on how to configure Vaultwarden here.
|
Please *do not* submit feature requests or ask for help on how to configure Vaultwarden here.
|
||||||
|
|
||||||
The [GitHub Discussions](https://github.com/dani-garcia/vaultwarden/discussions/) has sections for Questions and Ideas.
|
The [GitHub Discussions](https://github.com/vaultwarden/vaultwarden/discussions/) has sections for Questions and Ideas.
|
||||||
|
|
||||||
Also, make sure you are running [![GitHub Release](https://img.shields.io/github/release/dani-garcia/vaultwarden.svg)](https://github.com/dani-garcia/vaultwarden/releases/latest) of Vaultwarden!
|
Also, make sure you are running [![GitHub Release](https://img.shields.io/github/release/vaultwarden/vaultwarden.svg)](https://github.com/vaultwarden/vaultwarden/releases/latest) of Vaultwarden!
|
||||||
And search for existing open or closed issues or discussions regarding your topic before posting.
|
And search for existing open or closed issues or discussions regarding your topic before posting.
|
||||||
|
|
||||||
Be sure to check and validate the Vaultwarden Admin Diagnostics (`/admin/diagnostics`) page for any errors!
|
Be sure to check and validate the Vaultwarden Admin Diagnostics (`/admin/diagnostics`) page for any errors!
|
||||||
See here [how to enable the admin page](https://github.com/dani-garcia/vaultwarden/wiki/Enabling-admin-page).
|
See here [how to enable the admin page](https://github.com/vaultwarden/vaultwarden/wiki/Enabling-admin-page).
|
||||||
#
|
#
|
||||||
- id: support-string
|
- id: support-string
|
||||||
type: textarea
|
type: textarea
|
||||||
|
|
2
.github/ISSUE_TEMPLATE/config.yml
vendored
2
.github/ISSUE_TEMPLATE/config.yml
vendored
|
@ -1,7 +1,7 @@
|
||||||
blank_issues_enabled: false
|
blank_issues_enabled: false
|
||||||
contact_links:
|
contact_links:
|
||||||
- name: GitHub Discussions for Vaultwarden
|
- name: GitHub Discussions for Vaultwarden
|
||||||
url: https://github.com/dani-garcia/vaultwarden/discussions
|
url: https://github.com/vaultwarden/vaultwarden/discussions
|
||||||
about: Use the discussions to request features or get help with usage/configuration.
|
about: Use the discussions to request features or get help with usage/configuration.
|
||||||
- name: Discourse forum for Vaultwarden
|
- name: Discourse forum for Vaultwarden
|
||||||
url: https://vaultwarden.discourse.group/
|
url: https://vaultwarden.discourse.group/
|
||||||
|
|
4
.github/workflows/release.yml
vendored
4
.github/workflows/release.yml
vendored
|
@ -14,7 +14,7 @@ jobs:
|
||||||
# We will skip this check if we are creating a tag, because that has the same hash as a previous run already.
|
# We will skip this check if we are creating a tag, because that has the same hash as a previous run already.
|
||||||
skip_check:
|
skip_check:
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
if: ${{ github.repository == 'dani-garcia/vaultwarden' }}
|
if: ${{ github.repository == 'vaultwarden/vaultwarden' }}
|
||||||
outputs:
|
outputs:
|
||||||
should_skip: ${{ steps.skip_check.outputs.should_skip }}
|
should_skip: ${{ steps.skip_check.outputs.should_skip }}
|
||||||
steps:
|
steps:
|
||||||
|
@ -30,7 +30,7 @@ jobs:
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
timeout-minutes: 120
|
timeout-minutes: 120
|
||||||
needs: skip_check
|
needs: skip_check
|
||||||
if: ${{ needs.skip_check.outputs.should_skip != 'true' && github.repository == 'dani-garcia/vaultwarden' }}
|
if: ${{ needs.skip_check.outputs.should_skip != 'true' && github.repository == 'vaultwarden/vaultwarden' }}
|
||||||
# Start a local docker registry to extract the final Alpine static build binaries
|
# Start a local docker registry to extract the final Alpine static build binaries
|
||||||
services:
|
services:
|
||||||
registry:
|
registry:
|
||||||
|
|
2
.github/workflows/trivy.yml
vendored
2
.github/workflows/trivy.yml
vendored
|
@ -18,7 +18,7 @@ jobs:
|
||||||
trivy-scan:
|
trivy-scan:
|
||||||
# Only run this in the master repo and not on forks
|
# Only run this in the master repo and not on forks
|
||||||
# When all forks run this at the same time, it is causing `Too Many Requests` issues
|
# When all forks run this at the same time, it is causing `Too Many Requests` issues
|
||||||
if: ${{ github.repository == 'dani-garcia/vaultwarden' }}
|
if: ${{ github.repository == 'vaultwarden/vaultwarden' }}
|
||||||
name: Check
|
name: Check
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
|
|
|
@ -6,7 +6,7 @@ edition = "2021"
|
||||||
rust-version = "1.82.0"
|
rust-version = "1.82.0"
|
||||||
resolver = "2"
|
resolver = "2"
|
||||||
|
|
||||||
repository = "https://github.com/dani-garcia/vaultwarden"
|
repository = "https://github.com/vaultwarden/vaultwarden"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
license = "AGPL-3.0-only"
|
license = "AGPL-3.0-only"
|
||||||
publish = false
|
publish = false
|
||||||
|
|
46
README.md
46
README.md
|
@ -4,21 +4,21 @@ An alternative server implementation of the Bitwarden Client API, written in Rus
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
[![GitHub Release](https://img.shields.io/github/release/dani-garcia/vaultwarden.svg?style=for-the-badge&logo=vaultwarden&color=005AA4)](https://github.com/dani-garcia/vaultwarden/releases/latest)
|
[![GitHub Release](https://img.shields.io/github/release/vaultwarden/vaultwarden.svg?style=for-the-badge&logo=vaultwarden&color=005AA4)](https://github.com/vaultwarden/vaultwarden/releases/latest)
|
||||||
[![ghcr.io Pulls](https://img.shields.io/badge/dynamic/json?style=for-the-badge&logo=github&logoColor=fff&color=005AA4&url=https%3A%2F%2Fipitio.github.io%2Fbackage%2Fdani-garcia%2Fvaultwarden%2Fvaultwarden.json&query=%24.downloads&label=ghcr.io%20pulls&cacheSeconds=14400)](https://github.com/dani-garcia/vaultwarden/pkgs/container/vaultwarden)
|
[![ghcr.io Pulls](https://img.shields.io/badge/dynamic/json?style=for-the-badge&logo=github&logoColor=fff&color=005AA4&url=https%3A%2F%2Fipitio.github.io%2Fbackage%2Fvaultwarden%2Fvaultwarden%2Fvaultwarden.json&query=%24.downloads&label=ghcr.io%20pulls&cacheSeconds=14400)](https://github.com/vaultwarden/vaultwarden/pkgs/container/vaultwarden)
|
||||||
[![Docker Pulls](https://img.shields.io/docker/pulls/vaultwarden/server.svg?style=for-the-badge&logo=docker&logoColor=fff&color=005AA4&label=docker.io%20pulls)](https://hub.docker.com/r/vaultwarden/server)
|
[![Docker Pulls](https://img.shields.io/docker/pulls/vaultwarden/server.svg?style=for-the-badge&logo=docker&logoColor=fff&color=005AA4&label=docker.io%20pulls)](https://hub.docker.com/r/vaultwarden/server)
|
||||||
[![Quay.io](https://img.shields.io/badge/quay.io-download-005AA4?style=for-the-badge&logo=redhat&cacheSeconds=14400)](https://quay.io/repository/vaultwarden/server) <br>
|
[![Quay.io](https://img.shields.io/badge/quay.io-download-005AA4?style=for-the-badge&logo=redhat&cacheSeconds=14400)](https://quay.io/repository/vaultwarden/server) <br>
|
||||||
[![Contributors](https://img.shields.io/github/contributors-anon/dani-garcia/vaultwarden.svg?style=flat-square&logo=vaultwarden&color=005AA4)](https://github.com/dani-garcia/vaultwarden/graphs/contributors)
|
[![Contributors](https://img.shields.io/github/contributors-anon/vaultwarden/vaultwarden.svg?style=flat-square&logo=vaultwarden&color=005AA4)](https://github.com/vaultwarden/vaultwarden/graphs/contributors)
|
||||||
[![Forks](https://img.shields.io/github/forks/dani-garcia/vaultwarden.svg?style=flat-square&logo=github&logoColor=fff&color=005AA4)](https://github.com/dani-garcia/vaultwarden/network/members)
|
[![Forks](https://img.shields.io/github/forks/vaultwarden/vaultwarden.svg?style=flat-square&logo=github&logoColor=fff&color=005AA4)](https://github.com/vaultwarden/vaultwarden/network/members)
|
||||||
[![Stars](https://img.shields.io/github/stars/dani-garcia/vaultwarden.svg?style=flat-square&logo=github&logoColor=fff&color=005AA4)](https://github.com/dani-garcia/vaultwarden/stargazers)
|
[![Stars](https://img.shields.io/github/stars/vaultwarden/vaultwarden.svg?style=flat-square&logo=github&logoColor=fff&color=005AA4)](https://github.com/vaultwarden/vaultwarden/stargazers)
|
||||||
[![Issues Open](https://img.shields.io/github/issues/dani-garcia/vaultwarden.svg?style=flat-square&logo=github&logoColor=fff&color=005AA4&cacheSeconds=300)](https://github.com/dani-garcia/vaultwarden/issues)
|
[![Issues Open](https://img.shields.io/github/issues/vaultwarden/vaultwarden.svg?style=flat-square&logo=github&logoColor=fff&color=005AA4&cacheSeconds=300)](https://github.com/vaultwarden/vaultwarden/issues)
|
||||||
[![Issues Closed](https://img.shields.io/github/issues-closed/dani-garcia/vaultwarden.svg?style=flat-square&logo=github&logoColor=fff&color=005AA4&cacheSeconds=300)](https://github.com/dani-garcia/vaultwarden/issues?q=is%3Aissue+is%3Aclosed)
|
[![Issues Closed](https://img.shields.io/github/issues-closed/vaultwarden/vaultwarden.svg?style=flat-square&logo=github&logoColor=fff&color=005AA4&cacheSeconds=300)](https://github.com/vaultwarden/vaultwarden/issues?q=is%3Aissue+is%3Aclosed)
|
||||||
[![AGPL-3.0 Licensed](https://img.shields.io/github/license/dani-garcia/vaultwarden.svg?style=flat-square&logo=vaultwarden&color=944000&cacheSeconds=14400)](https://github.com/dani-garcia/vaultwarden/blob/main/LICENSE.txt) <br>
|
[![AGPL-3.0 Licensed](https://img.shields.io/github/license/vaultwarden/vaultwarden.svg?style=flat-square&logo=vaultwarden&color=944000&cacheSeconds=14400)](https://github.com/vaultwarden/vaultwarden/blob/main/LICENSE.txt) <br>
|
||||||
[![Dependency Status](https://img.shields.io/badge/dynamic/xml?url=https%3A%2F%2Fdeps.rs%2Frepo%2Fgithub%2Fdani-garcia%2Fvaultwarden%2Fstatus.svg&query=%2F*%5Blocal-name()%3D'svg'%5D%2F*%5Blocal-name()%3D'g'%5D%5B2%5D%2F*%5Blocal-name()%3D'text'%5D%5B4%5D&style=flat-square&logo=rust&label=dependencies&color=005AA4)](https://deps.rs/repo/github/dani-garcia/vaultwarden)
|
[![Dependency Status](https://img.shields.io/badge/dynamic/xml?url=https%3A%2F%2Fdeps.rs%2Frepo%2Fgithub%2Fvaultwarden%2Fvaultwarden%2Fstatus.svg&query=%2F*%5Blocal-name()%3D'svg'%5D%2F*%5Blocal-name()%3D'g'%5D%5B2%5D%2F*%5Blocal-name()%3D'text'%5D%5B4%5D&style=flat-square&logo=rust&label=dependencies&color=005AA4)](https://deps.rs/repo/github/vaultwarden/vaultwarden)
|
||||||
[![GHA Release](https://img.shields.io/github/actions/workflow/status/dani-garcia/vaultwarden/release.yml?style=flat-square&logo=github&logoColor=fff&label=Release%20Workflow)](https://github.com/dani-garcia/vaultwarden/actions/workflows/release.yml)
|
[![GHA Release](https://img.shields.io/github/actions/workflow/status/vaultwarden/vaultwarden/release.yml?style=flat-square&logo=github&logoColor=fff&label=Release%20Workflow)](https://github.com/vaultwarden/vaultwarden/actions/workflows/release.yml)
|
||||||
[![GHA Build](https://img.shields.io/github/actions/workflow/status/dani-garcia/vaultwarden/build.yml?style=flat-square&logo=github&logoColor=fff&label=Build%20Workflow)](https://github.com/dani-garcia/vaultwarden/actions/workflows/build.yml) <br>
|
[![GHA Build](https://img.shields.io/github/actions/workflow/status/vaultwarden/vaultwarden/build.yml?style=flat-square&logo=github&logoColor=fff&label=Build%20Workflow)](https://github.com/vaultwarden/vaultwarden/actions/workflows/build.yml) <br>
|
||||||
[![Matrix Chat](https://img.shields.io/matrix/vaultwarden:matrix.org.svg?style=flat-square&logo=matrix&logoColor=fff&color=953B00&cacheSeconds=14400)](https://matrix.to/#/#vaultwarden:matrix.org)
|
[![Matrix Chat](https://img.shields.io/matrix/vaultwarden:matrix.org.svg?style=flat-square&logo=matrix&logoColor=fff&color=953B00&cacheSeconds=14400)](https://matrix.to/#/#vaultwarden:matrix.org)
|
||||||
[![GitHub Discussions](https://img.shields.io/github/discussions/dani-garcia/vaultwarden?style=flat-square&logo=github&logoColor=fff&color=953B00&cacheSeconds=300)](https://github.com/dani-garcia/vaultwarden/discussions)
|
[![GitHub Discussions](https://img.shields.io/github/discussions/vaultwarden/vaultwarden?style=flat-square&logo=github&logoColor=fff&color=953B00&cacheSeconds=300)](https://github.com/vaultwarden/vaultwarden/discussions)
|
||||||
[![Discourse Discussions](https://img.shields.io/discourse/topics?server=https%3A%2F%2Fvaultwarden.discourse.group%2F&style=flat-square&logo=discourse&color=953B00)](https://vaultwarden.discourse.group/)
|
[![Discourse Discussions](https://img.shields.io/discourse/topics?server=https%3A%2F%2Fvaultwarden.discourse.group%2F&style=flat-square&logo=discourse&color=953B00)](https://vaultwarden.discourse.group/)
|
||||||
|
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
|
@ -51,8 +51,8 @@ A nearly complete implementation of the Bitwarden Client API is provided, includ
|
||||||
[YubiKey](https://bitwarden.com/help/setup-two-step-login-yubikey/),
|
[YubiKey](https://bitwarden.com/help/setup-two-step-login-yubikey/),
|
||||||
[Duo](https://bitwarden.com/help/setup-two-step-login-duo/)
|
[Duo](https://bitwarden.com/help/setup-two-step-login-duo/)
|
||||||
* [Emergency Access](https://bitwarden.com/help/emergency-access/)
|
* [Emergency Access](https://bitwarden.com/help/emergency-access/)
|
||||||
* [Vaultwarden Admin Backend](https://github.com/dani-garcia/vaultwarden/wiki/Enabling-admin-page)
|
* [Vaultwarden Admin Backend](https://github.com/vaultwarden/vaultwarden/wiki/Enabling-admin-page)
|
||||||
* [Modified Web Vault client](https://github.com/dani-garcia/bw_web_builds) (Bundled within our containers)
|
* [Modified Web Vault client](https://github.com/vaultwarden/bw_web_builds) (Bundled within our containers)
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
|
@ -61,16 +61,16 @@ A nearly complete implementation of the Bitwarden Client API is provided, includ
|
||||||
> [!IMPORTANT]
|
> [!IMPORTANT]
|
||||||
> Most modern web browsers disallow the use of Web Crypto APIs in insecure contexts. In this case, you might get an error like `Cannot read property 'importKey'`. To solve this problem, you need to access the web vault via HTTPS or localhost.
|
> Most modern web browsers disallow the use of Web Crypto APIs in insecure contexts. In this case, you might get an error like `Cannot read property 'importKey'`. To solve this problem, you need to access the web vault via HTTPS or localhost.
|
||||||
>
|
>
|
||||||
>This can be configured in [Vaultwarden directly](https://github.com/dani-garcia/vaultwarden/wiki/Enabling-HTTPS) or using a third-party reverse proxy ([some examples](https://github.com/dani-garcia/vaultwarden/wiki/Proxy-examples)).
|
>This can be configured in [Vaultwarden directly](https://github.com/vaultwarden/vaultwarden/wiki/Enabling-HTTPS) or using a third-party reverse proxy ([some examples](https://github.com/vaultwarden/vaultwarden/wiki/Proxy-examples)).
|
||||||
>
|
>
|
||||||
>If you have an available domain name, you can get HTTPS certificates with [Let's Encrypt](https://letsencrypt.org/), or you can generate self-signed certificates with utilities like [mkcert](https://github.com/FiloSottile/mkcert). Some proxies automatically do this step, like Caddy or Traefik (see examples linked above).
|
>If you have an available domain name, you can get HTTPS certificates with [Let's Encrypt](https://letsencrypt.org/), or you can generate self-signed certificates with utilities like [mkcert](https://github.com/FiloSottile/mkcert). Some proxies automatically do this step, like Caddy or Traefik (see examples linked above).
|
||||||
|
|
||||||
> [!TIP]
|
> [!TIP]
|
||||||
>**For more detailed examples on how to install, use and configure Vaultwarden you can check our [Wiki](https://github.com/dani-garcia/vaultwarden/wiki).**
|
>**For more detailed examples on how to install, use and configure Vaultwarden you can check our [Wiki](https://github.com/vaultwarden/vaultwarden/wiki).**
|
||||||
|
|
||||||
The main way to use Vaultwarden is via our container images which are published to [ghcr.io](https://github.com/dani-garcia/vaultwarden/pkgs/container/vaultwarden), [docker.io](https://hub.docker.com/r/vaultwarden/server) and [quay.io](https://quay.io/repository/vaultwarden/server).
|
The main way to use Vaultwarden is via our container images which are published to [ghcr.io](https://github.com/vaultwarden/vaultwarden/pkgs/container/vaultwarden), [docker.io](https://hub.docker.com/r/vaultwarden/server) and [quay.io](https://quay.io/repository/vaultwarden/server).
|
||||||
|
|
||||||
There are also [community driven packages](https://github.com/dani-garcia/vaultwarden/wiki/Third-party-packages) which can be used, but those might be lagging behind the latest version or might deviate in the way Vaultwarden is configured, as described in our [Wiki](https://github.com/dani-garcia/vaultwarden/wiki).
|
There are also [community driven packages](https://github.com/vaultwarden/vaultwarden/wiki/Third-party-packages) which can be used, but those might be lagging behind the latest version or might deviate in the way Vaultwarden is configured, as described in our [Wiki](https://github.com/vaultwarden/vaultwarden/wiki).
|
||||||
|
|
||||||
### Docker/Podman CLI
|
### Docker/Podman CLI
|
||||||
|
|
||||||
|
@ -111,9 +111,9 @@ services:
|
||||||
|
|
||||||
## Get in touch
|
## Get in touch
|
||||||
|
|
||||||
Have a question, suggestion or need help? Join our community on [Matrix](https://matrix.to/#/#vaultwarden:matrix.org), [GitHub Discussions](https://github.com/dani-garcia/vaultwarden/discussions) or [Discourse Forums](https://vaultwarden.discourse.group/).
|
Have a question, suggestion or need help? Join our community on [Matrix](https://matrix.to/#/#vaultwarden:matrix.org), [GitHub Discussions](https://github.com/vaultwarden/vaultwarden/discussions) or [Discourse Forums](https://vaultwarden.discourse.group/).
|
||||||
|
|
||||||
Encountered a bug or crash? Please search our issue tracker and discussions to see if it's already been reported. If not, please [start a new discussion](https://github.com/dani-garcia/vaultwarden/discussions) or [create a new issue](https://github.com/dani-garcia/vaultwarden/issues/). Ensure you're using the latest version of Vaultwarden and there aren't any similar issues open or closed!
|
Encountered a bug or crash? Please search our issue tracker and discussions to see if it's already been reported. If not, please [start a new discussion](https://github.com/vaultwarden/vaultwarden/discussions) or [create a new issue](https://github.com/vaultwarden/vaultwarden/issues/). Ensure you're using the latest version of Vaultwarden and there aren't any similar issues open or closed!
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
|
@ -121,8 +121,8 @@ Encountered a bug or crash? Please search our issue tracker and discussions to s
|
||||||
|
|
||||||
Thanks for your contribution to the project!
|
Thanks for your contribution to the project!
|
||||||
|
|
||||||
[![Contributors Count](https://img.shields.io/github/contributors-anon/dani-garcia/vaultwarden?style=for-the-badge&logo=vaultwarden&color=005AA4)](https://github.com/dani-garcia/vaultwarden/graphs/contributors)<br>
|
[![Contributors Count](https://img.shields.io/github/contributors-anon/vaultwarden/vaultwarden?style=for-the-badge&logo=vaultwarden&color=005AA4)](https://github.com/vaultwarden/vaultwarden/graphs/contributors)<br>
|
||||||
[![Contributors Avatars](https://contributors-img.web.app/image?repo=dani-garcia/vaultwarden)](https://github.com/dani-garcia/vaultwarden/graphs/contributors)
|
[![Contributors Avatars](https://contributors-img.web.app/image?repo=vaultwarden/vaultwarden)](https://github.com/vaultwarden/vaultwarden/graphs/contributors)
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
|
@ -141,4 +141,4 @@ The maintainers work together to set the direction for the project, focusing on
|
||||||
## Bitwarden_RS
|
## Bitwarden_RS
|
||||||
|
|
||||||
This project was known as Bitwarden_RS and has been renamed to separate itself from the official Bitwarden server in the hopes of avoiding confusion and trademark/branding issues.<br>
|
This project was known as Bitwarden_RS and has been renamed to separate itself from the official Bitwarden server in the hopes of avoiding confusion and trademark/branding issues.<br>
|
||||||
Please see [#1642 - v1.21.0 release and project rename to Vaultwarden](https://github.com/dani-garcia/vaultwarden/discussions/1642) for more explanation.
|
Please see [#1642 - v1.21.0 release and project rename to Vaultwarden](https://github.com/vaultwarden/vaultwarden/discussions/1642) for more explanation.
|
||||||
|
|
|
@ -14,13 +14,13 @@ notify us. We welcome working with you to resolve the issue promptly. Thanks in
|
||||||
|
|
||||||
# In-scope
|
# In-scope
|
||||||
|
|
||||||
- Security issues in any current release of Vaultwarden. Source code is available at https://github.com/dani-garcia/vaultwarden. This includes the current `latest` release and `main / testing` release.
|
- Security issues in any current release of Vaultwarden. Source code is available at https://github.com/vaultwarden/vaultwarden. This includes the current `latest` release and `main / testing` release.
|
||||||
|
|
||||||
# Exclusions
|
# Exclusions
|
||||||
|
|
||||||
The following bug classes are out-of scope:
|
The following bug classes are out-of scope:
|
||||||
|
|
||||||
- Bugs that are already reported on Vaultwarden's issue tracker (https://github.com/dani-garcia/vaultwarden/issues)
|
- Bugs that are already reported on Vaultwarden's issue tracker (https://github.com/vaultwarden/vaultwarden/issues)
|
||||||
- Bugs that are not part of Vaultwarden, like on the web-vault or mobile and desktop clients. These issues need to be reported in the respective project issue tracker at https://github.com/bitwarden to which we are not associated
|
- Bugs that are not part of Vaultwarden, like on the web-vault or mobile and desktop clients. These issues need to be reported in the respective project issue tracker at https://github.com/bitwarden to which we are not associated
|
||||||
- Issues in an upstream software dependency (ex: Rust, or External Libraries) which are already reported to the upstream maintainer
|
- Issues in an upstream software dependency (ex: Rust, or External Libraries) which are already reported to the upstream maintainer
|
||||||
- Attacks requiring physical access to a user's device
|
- Attacks requiring physical access to a user's device
|
||||||
|
|
|
@ -184,5 +184,5 @@ podman run --rm -it \
|
||||||
| SOURCE_COMMIT | null | The commit hash of the current commit for this build |
|
| SOURCE_COMMIT | null | The commit hash of the current commit for this build |
|
||||||
| SOURCE_VERSION | null | The current exact tag of this commit, else the last tag and the first 8 chars of the source commit |
|
| SOURCE_VERSION | null | The current exact tag of this commit, else the last tag and the first 8 chars of the source commit |
|
||||||
| BASE_TAGS | testing | Tags to be used. Can be a comma separated value like "latest,1.29.2" |
|
| BASE_TAGS | testing | Tags to be used. Can be a comma separated value like "latest,1.29.2" |
|
||||||
| CONTAINER_REGISTRIES | vaultwarden/server | Comma separated value of container registries. Like `ghcr.io/dani-garcia/vaultwarden,docker.io/vaultwarden/server` |
|
| CONTAINER_REGISTRIES | vaultwarden/server | Comma separated value of container registries. Like `ghcr.io/vaultwarden/vaultwarden,docker.io/vaultwarden/server` |
|
||||||
| VW_VERSION | null | To override the `SOURCE_VERSION` value. This is also used by the `build.rs` code for example |
|
| VW_VERSION | null | To override the `SOURCE_VERSION` value. This is also used by the `build.rs` code for example |
|
||||||
|
|
|
@ -43,7 +43,7 @@ variable "BASE_TAGS" {
|
||||||
|
|
||||||
// Which container registries should be used for the tagging
|
// Which container registries should be used for the tagging
|
||||||
// This can be a comma separated value
|
// This can be a comma separated value
|
||||||
// Use a full URI like `ghcr.io/dani-garcia/vaultwarden,docker.io/vaultwarden/server`
|
// Use a full URI like `ghcr.io/vaultwarden/vaultwarden,docker.io/vaultwarden/server`
|
||||||
variable "CONTAINER_REGISTRIES" {
|
variable "CONTAINER_REGISTRIES" {
|
||||||
default = "vaultwarden/server"
|
default = "vaultwarden/server"
|
||||||
}
|
}
|
||||||
|
@ -62,8 +62,8 @@ function "labels" {
|
||||||
result = {
|
result = {
|
||||||
"org.opencontainers.image.description" = "Unofficial Bitwarden compatible server written in Rust - ${SOURCE_VERSION}"
|
"org.opencontainers.image.description" = "Unofficial Bitwarden compatible server written in Rust - ${SOURCE_VERSION}"
|
||||||
"org.opencontainers.image.licenses" = "AGPL-3.0-only"
|
"org.opencontainers.image.licenses" = "AGPL-3.0-only"
|
||||||
"org.opencontainers.image.documentation" = "https://github.com/dani-garcia/vaultwarden/wiki"
|
"org.opencontainers.image.documentation" = "https://github.com/vaultwarden/vaultwarden/wiki"
|
||||||
"org.opencontainers.image.url" = "https://github.com/dani-garcia/vaultwarden"
|
"org.opencontainers.image.url" = "https://github.com/vaultwarden/vaultwarden"
|
||||||
"org.opencontainers.image.created" = "${formatdate("YYYY-MM-DD'T'hh:mm:ssZZZZZ", timestamp())}"
|
"org.opencontainers.image.created" = "${formatdate("YYYY-MM-DD'T'hh:mm:ssZZZZZ", timestamp())}"
|
||||||
"org.opencontainers.image.source" = "${SOURCE_REPOSITORY_URL}"
|
"org.opencontainers.image.source" = "${SOURCE_REPOSITORY_URL}"
|
||||||
"org.opencontainers.image.revision" = "${SOURCE_COMMIT}"
|
"org.opencontainers.image.revision" = "${SOURCE_COMMIT}"
|
||||||
|
|
|
@ -22,8 +22,8 @@ esac
|
||||||
LABEL_ARGS=(
|
LABEL_ARGS=(
|
||||||
--label org.opencontainers.image.description="Unofficial Bitwarden compatible server written in Rust"
|
--label org.opencontainers.image.description="Unofficial Bitwarden compatible server written in Rust"
|
||||||
--label org.opencontainers.image.licenses="AGPL-3.0-only"
|
--label org.opencontainers.image.licenses="AGPL-3.0-only"
|
||||||
--label org.opencontainers.image.documentation="https://github.com/dani-garcia/vaultwarden/wiki"
|
--label org.opencontainers.image.documentation="https://github.com/vaultwarden/vaultwarden/wiki"
|
||||||
--label org.opencontainers.image.url="https://github.com/dani-garcia/vaultwarden"
|
--label org.opencontainers.image.url="https://github.com/vaultwarden/vaultwarden"
|
||||||
--label org.opencontainers.image.created="$(date --utc --iso-8601=seconds)"
|
--label org.opencontainers.image.created="$(date --utc --iso-8601=seconds)"
|
||||||
)
|
)
|
||||||
if [[ -n "${SOURCE_REPOSITORY_URL}" ]]; then
|
if [[ -n "${SOURCE_REPOSITORY_URL}" ]]; then
|
||||||
|
|
|
@ -602,7 +602,7 @@ async fn get_json_api<T: DeserializeOwned>(url: &str) -> Result<T, Error> {
|
||||||
}
|
}
|
||||||
|
|
||||||
async fn has_http_access() -> bool {
|
async fn has_http_access() -> bool {
|
||||||
let Ok(req) = make_http_request(Method::HEAD, "https://github.com/dani-garcia/vaultwarden") else {
|
let Ok(req) = make_http_request(Method::HEAD, "https://github.com/vaultwarden/vaultwarden") else {
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
match req.send().await {
|
match req.send().await {
|
||||||
|
@ -619,13 +619,13 @@ async fn get_release_info(has_http_access: bool, running_within_container: bool)
|
||||||
// If the HTTP Check failed, do not even attempt to check for new versions since we were not able to connect with github.com anyway.
|
// If the HTTP Check failed, do not even attempt to check for new versions since we were not able to connect with github.com anyway.
|
||||||
if has_http_access {
|
if has_http_access {
|
||||||
(
|
(
|
||||||
match get_json_api::<GitRelease>("https://api.github.com/repos/dani-garcia/vaultwarden/releases/latest")
|
match get_json_api::<GitRelease>("https://api.github.com/repos/vaultwarden/vaultwarden/releases/latest")
|
||||||
.await
|
.await
|
||||||
{
|
{
|
||||||
Ok(r) => r.tag_name,
|
Ok(r) => r.tag_name,
|
||||||
_ => "-".to_string(),
|
_ => "-".to_string(),
|
||||||
},
|
},
|
||||||
match get_json_api::<GitCommit>("https://api.github.com/repos/dani-garcia/vaultwarden/commits/main").await {
|
match get_json_api::<GitCommit>("https://api.github.com/repos/vaultwarden/vaultwarden/commits/main").await {
|
||||||
Ok(mut c) => {
|
Ok(mut c) => {
|
||||||
c.sha.truncate(8);
|
c.sha.truncate(8);
|
||||||
c.sha
|
c.sha
|
||||||
|
@ -638,7 +638,7 @@ async fn get_release_info(has_http_access: bool, running_within_container: bool)
|
||||||
"-".to_string()
|
"-".to_string()
|
||||||
} else {
|
} else {
|
||||||
match get_json_api::<GitRelease>(
|
match get_json_api::<GitRelease>(
|
||||||
"https://api.github.com/repos/dani-garcia/bw_web_builds/releases/latest",
|
"https://api.github.com/repos/vaultwarden/bw_web_builds/releases/latest",
|
||||||
)
|
)
|
||||||
.await
|
.await
|
||||||
{
|
{
|
||||||
|
|
|
@ -203,7 +203,7 @@ fn config() -> Json<Value> {
|
||||||
"gitHash": option_env!("GIT_REV"),
|
"gitHash": option_env!("GIT_REV"),
|
||||||
"server": {
|
"server": {
|
||||||
"name": "Vaultwarden",
|
"name": "Vaultwarden",
|
||||||
"url": "https://github.com/dani-garcia/vaultwarden"
|
"url": "https://github.com/vaultwarden/vaultwarden"
|
||||||
},
|
},
|
||||||
"settings": {
|
"settings": {
|
||||||
"disableUserRegistration": !crate::CONFIG.signups_allowed() && crate::CONFIG.signups_domains_whitelist().is_empty(),
|
"disableUserRegistration": !crate::CONFIG.signups_allowed() && crate::CONFIG.signups_domains_whitelist().is_empty(),
|
||||||
|
|
|
@ -109,7 +109,7 @@ async fn _refresh_login(data: ConnectData, conn: &mut DbConn) -> JsonResult {
|
||||||
// ---
|
// ---
|
||||||
// Disabled this variable, it was used to generate the JWT
|
// Disabled this variable, it was used to generate the JWT
|
||||||
// Because this might get used in the future, and is add by the Bitwarden Server, lets keep it, but then commented out
|
// Because this might get used in the future, and is add by the Bitwarden Server, lets keep it, but then commented out
|
||||||
// See: https://github.com/dani-garcia/vaultwarden/issues/4156
|
// See: https://github.com/vaultwarden/vaultwarden/issues/4156
|
||||||
// ---
|
// ---
|
||||||
// let orgs = UserOrganization::find_confirmed_by_user(&user.uuid, conn).await;
|
// let orgs = UserOrganization::find_confirmed_by_user(&user.uuid, conn).await;
|
||||||
let (access_token, expires_in) = device.refresh_tokens(&user, scope_vec);
|
let (access_token, expires_in) = device.refresh_tokens(&user, scope_vec);
|
||||||
|
@ -289,7 +289,7 @@ async fn _password_login(
|
||||||
// ---
|
// ---
|
||||||
// Disabled this variable, it was used to generate the JWT
|
// Disabled this variable, it was used to generate the JWT
|
||||||
// Because this might get used in the future, and is add by the Bitwarden Server, lets keep it, but then commented out
|
// Because this might get used in the future, and is add by the Bitwarden Server, lets keep it, but then commented out
|
||||||
// See: https://github.com/dani-garcia/vaultwarden/issues/4156
|
// See: https://github.com/vaultwarden/vaultwarden/issues/4156
|
||||||
// ---
|
// ---
|
||||||
// let orgs = UserOrganization::find_confirmed_by_user(&user.uuid, conn).await;
|
// let orgs = UserOrganization::find_confirmed_by_user(&user.uuid, conn).await;
|
||||||
let (access_token, expires_in) = device.refresh_tokens(&user, scope_vec);
|
let (access_token, expires_in) = device.refresh_tokens(&user, scope_vec);
|
||||||
|
@ -438,7 +438,7 @@ async fn _user_api_key_login(
|
||||||
// ---
|
// ---
|
||||||
// Disabled this variable, it was used to generate the JWT
|
// Disabled this variable, it was used to generate the JWT
|
||||||
// Because this might get used in the future, and is add by the Bitwarden Server, lets keep it, but then commented out
|
// Because this might get used in the future, and is add by the Bitwarden Server, lets keep it, but then commented out
|
||||||
// See: https://github.com/dani-garcia/vaultwarden/issues/4156
|
// See: https://github.com/vaultwarden/vaultwarden/issues/4156
|
||||||
// ---
|
// ---
|
||||||
// let orgs = UserOrganization::find_confirmed_by_user(&user.uuid, conn).await;
|
// let orgs = UserOrganization::find_confirmed_by_user(&user.uuid, conn).await;
|
||||||
let (access_token, expires_in) = device.refresh_tokens(&user, scope_vec);
|
let (access_token, expires_in) = device.refresh_tokens(&user, scope_vec);
|
||||||
|
|
|
@ -161,7 +161,7 @@ pub struct LoginJwtClaims {
|
||||||
// Disabled these keys to be added to the JWT since they could cause the JWT to get too large
|
// Disabled these keys to be added to the JWT since they could cause the JWT to get too large
|
||||||
// Also These key/value pairs are not used anywhere by either Vaultwarden or Bitwarden Clients
|
// Also These key/value pairs are not used anywhere by either Vaultwarden or Bitwarden Clients
|
||||||
// Because these might get used in the future, and they are added by the Bitwarden Server, lets keep it, but then commented out
|
// Because these might get used in the future, and they are added by the Bitwarden Server, lets keep it, but then commented out
|
||||||
// See: https://github.com/dani-garcia/vaultwarden/issues/4156
|
// See: https://github.com/vaultwarden/vaultwarden/issues/4156
|
||||||
// ---
|
// ---
|
||||||
// pub orgowner: Vec<String>,
|
// pub orgowner: Vec<String>,
|
||||||
// pub orgadmin: Vec<String>,
|
// pub orgadmin: Vec<String>,
|
||||||
|
|
|
@ -1030,7 +1030,7 @@ fn validate_config(cfg: &ConfigItems) -> Result<(), Error> {
|
||||||
println!(
|
println!(
|
||||||
"[NOTICE] You are using a plain text `ADMIN_TOKEN` which is insecure.\n\
|
"[NOTICE] You are using a plain text `ADMIN_TOKEN` which is insecure.\n\
|
||||||
Please generate a secure Argon2 PHC string by using `vaultwarden hash` or `argon2`.\n\
|
Please generate a secure Argon2 PHC string by using `vaultwarden hash` or `argon2`.\n\
|
||||||
See: https://github.com/dani-garcia/vaultwarden/wiki/Enabling-admin-page#secure-the-admin_token\n"
|
See: https://github.com/vaultwarden/vaultwarden/wiki/Enabling-admin-page#secure-the-admin_token\n"
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
_ => {}
|
_ => {}
|
||||||
|
|
|
@ -99,7 +99,7 @@ impl Device {
|
||||||
// Disabled these keys to be added to the JWT since they could cause the JWT to get too large
|
// Disabled these keys to be added to the JWT since they could cause the JWT to get too large
|
||||||
// Also These key/value pairs are not used anywhere by either Vaultwarden or Bitwarden Clients
|
// Also These key/value pairs are not used anywhere by either Vaultwarden or Bitwarden Clients
|
||||||
// Because these might get used in the future, and they are added by the Bitwarden Server, lets keep it, but then commented out
|
// Because these might get used in the future, and they are added by the Bitwarden Server, lets keep it, but then commented out
|
||||||
// See: https://github.com/dani-garcia/vaultwarden/issues/4156
|
// See: https://github.com/vaultwarden/vaultwarden/issues/4156
|
||||||
// ---
|
// ---
|
||||||
// orgowner,
|
// orgowner,
|
||||||
// orgadmin,
|
// orgadmin,
|
||||||
|
|
|
@ -235,10 +235,10 @@ fn launch_info() {
|
||||||
| This is an *unofficial* Bitwarden implementation, DO NOT use the |\n\
|
| This is an *unofficial* Bitwarden implementation, DO NOT use the |\n\
|
||||||
| official channels to report bugs/features, regardless of client. |\n\
|
| official channels to report bugs/features, regardless of client. |\n\
|
||||||
| Send usage/configuration questions or feature requests to: |\n\
|
| Send usage/configuration questions or feature requests to: |\n\
|
||||||
| https://github.com/dani-garcia/vaultwarden/discussions or |\n\
|
| https://github.com/vaultwarden/vaultwarden/discussions or |\n\
|
||||||
| https://vaultwarden.discourse.group/ |\n\
|
| https://vaultwarden.discourse.group/ |\n\
|
||||||
| Report suspected bugs/issues in the software itself at: |\n\
|
| Report suspected bugs/issues in the software itself at: |\n\
|
||||||
| https://github.com/dani-garcia/vaultwarden/issues/new |\n\
|
| https://github.com/vaultwarden/vaultwarden/issues/new |\n\
|
||||||
\\--------------------------------------------------------------------/\n"
|
\\--------------------------------------------------------------------/\n"
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -540,7 +540,7 @@ fn check_web_vault() {
|
||||||
"Web vault is not found at '{}'. To install it, please follow the steps in: ",
|
"Web vault is not found at '{}'. To install it, please follow the steps in: ",
|
||||||
CONFIG.web_vault_folder()
|
CONFIG.web_vault_folder()
|
||||||
);
|
);
|
||||||
error!("https://github.com/dani-garcia/vaultwarden/wiki/Building-binary#install-the-web-vault");
|
error!("https://github.com/vaultwarden/vaultwarden/wiki/Building-binary#install-the-web-vault");
|
||||||
error!("You can also set the environment variable 'WEB_VAULT_ENABLED=false' to disable it");
|
error!("You can also set the environment variable 'WEB_VAULT_ENABLED=false' to disable it");
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
<p class="lead">Sorry, but the page you were looking for could not be found.</p>
|
<p class="lead">Sorry, but the page you were looking for could not be found.</p>
|
||||||
<p class="display-6">
|
<p class="display-6">
|
||||||
<a href="{{urlpath}}/"><img class="vw-404" src="{{urlpath}}/vw_static/404.png" alt="Return to the web vault?"></a></p>
|
<a href="{{urlpath}}/"><img class="vw-404" src="{{urlpath}}/vw_static/404.png" alt="Return to the web vault?"></a></p>
|
||||||
<p>You can <a href="{{urlpath}}/">return to the web-vault</a>, or <a href="https://github.com/dani-garcia/vaultwarden">contact us</a>.</p>
|
<p>You can <a href="{{urlpath}}/">return to the web-vault</a>, or <a href="https://github.com/vaultwarden/vaultwarden">contact us</a>.</p>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<div class="container footer text-muted content">Vaultwarden (unofficial Bitwarden® server)</div>
|
<div class="container footer text-muted content">Vaultwarden (unofficial Bitwarden® server)</div>
|
||||||
|
|
|
@ -201,7 +201,7 @@
|
||||||
<dd class="col-sm-12">
|
<dd class="col-sm-12">
|
||||||
If you need support please check the following links first before you create a new issue:
|
If you need support please check the following links first before you create a new issue:
|
||||||
<a href="https://vaultwarden.discourse.group/" target="_blank" rel="noreferrer noopener">Vaultwarden Forum</a>
|
<a href="https://vaultwarden.discourse.group/" target="_blank" rel="noreferrer noopener">Vaultwarden Forum</a>
|
||||||
| <a href="https://github.com/dani-garcia/vaultwarden/discussions" target="_blank" rel="noreferrer noopener">Github Discussions</a>
|
| <a href="https://github.com/vaultwarden/vaultwarden/discussions" target="_blank" rel="noreferrer noopener">Github Discussions</a>
|
||||||
</dd>
|
</dd>
|
||||||
</dl>
|
</dl>
|
||||||
<dl class="row">
|
<dl class="row">
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<button type="button" class="btn-close" data-bs-target="admin_token_warning" data-bs-dismiss="alert" aria-label="Close"></button>
|
<button type="button" class="btn-close" data-bs-target="admin_token_warning" data-bs-dismiss="alert" aria-label="Close"></button>
|
||||||
You are using a plain text `ADMIN_TOKEN` which is insecure.<br>
|
You are using a plain text `ADMIN_TOKEN` which is insecure.<br>
|
||||||
Please generate a secure Argon2 PHC string by using `vaultwarden hash` or `argon2`.<br>
|
Please generate a secure Argon2 PHC string by using `vaultwarden hash` or `argon2`.<br>
|
||||||
See: <a href="https://github.com/dani-garcia/vaultwarden/wiki/Enabling-admin-page#secure-the-admin_token" target="_blank" rel="noopener noreferrer">Enabling admin page - Secure the `ADMIN_TOKEN`</a>
|
See: <a href="https://github.com/vaultwarden/vaultwarden/wiki/Enabling-admin-page#secure-the-admin_token" target="_blank" rel="noopener noreferrer">Enabling admin page - Secure the `ADMIN_TOKEN`</a>
|
||||||
</div>
|
</div>
|
||||||
<div id="config-block" class="align-items-center p-3 mb-3 bg-secondary rounded shadow">
|
<div id="config-block" class="align-items-center p-3 mb-3 bg-secondary rounded shadow">
|
||||||
<div>
|
<div>
|
||||||
|
@ -128,7 +128,7 @@
|
||||||
This does not include any configuration or file attachment data that may
|
This does not include any configuration or file attachment data that may
|
||||||
also be needed to fully restore a vaultwarden instance. For details on
|
also be needed to fully restore a vaultwarden instance. For details on
|
||||||
how to perform complete backups, refer to the wiki page on
|
how to perform complete backups, refer to the wiki page on
|
||||||
<a href="https://github.com/dani-garcia/vaultwarden/wiki/Backing-up-your-vault" target="_blank" rel="noopener noreferrer">backups</a>.
|
<a href="https://github.com/vaultwarden/vaultwarden/wiki/Backing-up-your-vault" target="_blank" rel="noopener noreferrer">backups</a>.
|
||||||
</div>
|
</div>
|
||||||
<button type="button" class="btn btn-primary" id="backupDatabase">Backup Database</button>
|
<button type="button" class="btn btn-primary" id="backupDatabase">Backup Database</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
<td class="aligncenter social-icons" align="center" style="-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; box-sizing: border-box; color: #999; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; line-height: 20px; margin: 0; padding: 5px 0 20px 0;" valign="top">
|
<td class="aligncenter social-icons" align="center" style="-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; box-sizing: border-box; color: #999; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; line-height: 20px; margin: 0; padding: 5px 0 20px 0;" valign="top">
|
||||||
<table cellpadding="0" cellspacing="0" style="-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; box-sizing: border-box; color: #333; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 16px; line-height: 25px; margin: 0 auto;">
|
<table cellpadding="0" cellspacing="0" style="-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; box-sizing: border-box; color: #333; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 16px; line-height: 25px; margin: 0 auto;">
|
||||||
<tr style="-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; box-sizing: border-box; color: #333; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 16px; line-height: 25px; margin: 0;">
|
<tr style="-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; box-sizing: border-box; color: #333; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 16px; line-height: 25px; margin: 0;">
|
||||||
<td style="-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; box-sizing: border-box; color: #999; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; line-height: 20px; margin: 0; padding: 0 10px;" valign="top"><a href="https://github.com/dani-garcia/vaultwarden" target="_blank" style="-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; box-sizing: border-box; color: #999; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; line-height: 20px; margin: 0; text-decoration: underline;"><img src="{{img_src}}mail-github.png" alt="GitHub" width="30" height="30" style="-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; border: none; box-sizing: border-box; color: #333; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 16px; line-height: 25px; margin: 0; max-width: 100%;" /></a></td>
|
<td style="-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; box-sizing: border-box; color: #999; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; line-height: 20px; margin: 0; padding: 0 10px;" valign="top"><a href="https://github.com/vaultwarden/vaultwarden" target="_blank" style="-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; box-sizing: border-box; color: #999; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 12px; line-height: 20px; margin: 0; text-decoration: underline;"><img src="{{img_src}}mail-github.png" alt="GitHub" width="30" height="30" style="-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: none; border: none; box-sizing: border-box; color: #333; font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 16px; line-height: 25px; margin: 0; max-width: 100%;" /></a></td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</td>
|
</td>
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
|
|
||||||
===
|
===
|
||||||
Github: https://github.com/dani-garcia/vaultwarden
|
Github: https://github.com/vaultwarden/vaultwarden
|
||||||
|
|
Loading…
Reference in a new issue