1
0
mirror of https://github.com/bitwarden/server.git synced 2024-11-25 12:45:18 +01:00
The core infrastructure backend (API, database, Docker, etc).
Go to file
Addison Beck 25a9991908
Implement User-based API Keys (#981)
* added column ApiKey to dbo.User

* added dbo.User.ApiKey to User_Update

* added dbo.User.ApiKey to User_Create

* wrote migration script for implementing dbo.User.ApiKey

* Added ApiKey prop to the User table model

* Created AccountsController method for getting a user's API Key

* Created AccountsController method for rotating a user API key

* Added support to ApiClient for passed-through ClientSecrets when the request comes from the cli

* Added a new conditional to ClientStore to account for user API keys

* Wrote unit tests for new user API Key methods

* Added a refresh of dbo.UserView to new migration script for ApiKey

* Let client_credentials grants into the custom token logic

* Cleanup for ApiKey auth in the CLI feature

* Created user API key on registration

* Removed uneeded code for user API keys

* Changed a .Contains() to a .StartsWith() in ClientStore

* Changed index that an array is searched on

* Added more claims to the user apikey clients

* Moved some claim finding logic to a helper method
2020-11-10 15:15:29 -05:00
.github/workflows run tool restore on linux build 2020-07-17 11:35:36 -04:00
bitwarden_license [Exemption] Updated policy messages (#984) 2020-11-10 09:53:44 -06:00
scripts Docker version bump - 1.37.2 (#965) 2020-10-09 15:50:54 -04:00
src Implement User-based API Keys (#981) 2020-11-10 15:15:29 -05:00
test Implement User-based API Keys (#981) 2020-11-10 15:15:29 -05:00
util Implement User-based API Keys (#981) 2020-11-10 15:15:29 -05:00
.editorconfig fix prefix fields with _ 2020-01-15 09:19:15 -05:00
.gitattributes Added .gitattributes file to files requiring LF endings are properly checked out on Windows. (#380) 2018-10-18 12:15:41 -04:00
.gitignore ignore lib and css from portal and sso projects 2020-09-04 14:03:54 -04:00
appveyor.yml Update swagger config to use proper URL scheme (#744) 2020-05-21 15:00:03 -04:00
bitwarden-server.sln add all licenses to solution items 2020-09-04 14:09:30 -04:00
build.sh Merge SSO and Portal projects 2020-09-04 13:56:08 -04:00
CONTRIBUTING.md rewrite dev environment setup guide (#958) 2020-10-07 10:13:32 -04:00
dotnet-tools.json swagger cli tool fixes 2020-01-10 16:06:44 -05:00
ISSUE_TEMPLATE.md Update ISSUE_TEMPLATE.md 2018-03-10 14:35:33 -05:00
LICENSE_AGPL.txt split license file out to support bitwarden licensed code (#912) 2020-09-04 13:36:22 -04:00
LICENSE_BITWARDEN.txt split license file out to support bitwarden licensed code (#912) 2020-09-04 13:36:22 -04:00
LICENSE_FAQ.md Update LICENSE_FAQ.md 2020-09-05 23:39:50 -04:00
LICENSE.txt split license file out to support bitwarden licensed code (#912) 2020-09-04 13:36:22 -04:00
NuGet.Config initial commit of source 2015-12-08 22:57:38 -05:00
README.md Added contributing.md file and link in readme (#950) 2020-09-28 09:48:05 -04:00
SECURITY.md Uppercase Bitwarden 2018-02-27 14:16:19 -05:00

Bitwarden

appveyor build DockerHub gitter chat


The Bitwarden Server project contains the APIs, database, and other core infrastructure items needed for the "backend" of all bitwarden client applications.

The server project is written in C# using .NET Core with ASP.NET Core. The database is written in T-SQL/SQL Server. The codebase can be developed, built, run, and deployed cross-platform on Windows, macOS, and Linux distributions.

Build/Run

Requirements

These dependencies are free to use.

These tools are free to use.

API

cd src/Api
dotnet restore
dotnet build
dotnet run

visit http://localhost:5000/alive

Identity

cd src/Identity
dotnet restore
dotnet build
dotnet run

visit http://localhost:33657/.well-known/openid-configuration

Deploy

docker

You can deploy Bitwarden using Docker containers on Windows, macOS, and Linux distributions. Use the provided PowerShell and Bash scripts to get started quickly. Find all of the Bitwarden images on Docker Hub.

Full documentation for deploying Bitwarden with Docker can be found in our help center at: https://help.bitwarden.com/article/install-on-premise/

Requirements

These dependencies are free to use.

Linux & macOS

curl -s -o bitwarden.sh \
    https://raw.githubusercontent.com/bitwarden/server/master/scripts/bitwarden.sh \
    && chmod +x bitwarden.sh
./bitwarden.sh install
./bitwarden.sh start

Windows

Invoke-RestMethod -OutFile bitwarden.ps1 `
    -Uri https://raw.githubusercontent.com/bitwarden/server/master/scripts/bitwarden.ps1
.\bitwarden.ps1 -install
.\bitwarden.ps1 -start

Contribute

Code contributions are welcome! Visual Studio or VS Code is highly recommended if you are working on this project. Please commit any pull requests against the master branch. Please see CONTRIBUTING.md for more info (and feel free to contribute to that guide as well).

Security audits and feedback are welcome. Please open an issue or email us privately if the report is sensitive in nature. You can read our security policy in the SECURITY.md file. We also run a program on HackerOne.