1
0
mirror of https://github.com/bitwarden/server.git synced 2024-12-02 13:53:23 +01:00
Commit Graph

1470 Commits

Author SHA1 Message Date
Thomas Rittson
499c30a805
Fix error message if already accepted EA invite (#1159)
* Fix error message if already accepted EA invite

* Fix error message wording depending on EA status
2021-02-24 05:46:52 +10:00
Matt Gibson
5537470703
Use sas token for attachment downloads (#1153)
* Get limited life attachment download URL

This change limits url download to a 1min lifetime.
This requires moving to a new container to allow for non-public blob
access.

Clients will have to call GetAttachmentData api function to receive the download
URL. For backwards compatibility, attachment URLs are still present, but will not
work for attachments stored in non-public access blobs.

* Make GlobalSettings interface for testing

* Test LocalAttachmentStorageService equivalence

* Remove comment

* Add missing globalSettings using

* Simplify default attachment container

* Default to attachments containe for existing methods

A new upload method will be made for uploading to attachments-v2.
For compatibility for clients which don't use these new methods, we need
to still use the old container. The new container will be used only for
new uploads

* Remove Default MetaData fixture.

* Keep attachments container blob-level security for all instances

* Close unclosed FileStream

* Favor default value for noop services
2021-02-22 15:35:16 -06:00
Kyle Spearrin
cd2834cc15 Revert "remove premium checks for internal testing"
This reverts commit 26fb6fc3b7.
2021-02-17 13:16:01 -05:00
Thomas Rittson
ad6abaccc8
Fix error message if user already accepted invite (#1140)
* Fix error message if already accepted invitation

* Improve error message wording

* Use consistent capitalization of organization
2021-02-17 09:28:49 +10:00
Oscar Hinton
979eb4a842
Run Quartz in clustered mode (#1123) 2021-02-12 13:49:11 +01:00
Kyle Spearrin
c3a99402f8
adjust date validation for send (#1137) 2021-02-11 14:39:21 -05:00
Kyle Spearrin
7c9ea83ad2
HTML encode sanitized inputs for email templates (#1138) 2021-02-11 14:39:13 -05:00
Chad Scharf
6cc317c4ba
SSO - Added custom scopes and claim types for OIDC (#1133)
* SSO - Added custom scopes and claim types for OIDC

* Removed redundant field labels

* Added acr_values to OIDC config + request
2021-02-10 12:00:12 -05:00
Thomas Rittson
9f42357705
Improved handling of grantor access to organizations after takeover (refactored) (#1134)
* Revert "Only return policy in TakeoverResponse if Owner"

This reverts commit b20e6f5e85.

* Revert "Return grantor policy info in TakeoverResponse"

This reverts commit 204217a5e0.

* Add endpoint to get grantor policies on takeover
2021-02-10 09:06:42 +10:00
Thomas Rittson
d51b592cb5
Improved handling of grantor access to organizations after takeover (#1132)
* Remove grantor from orgs after takeover

* Return grantor policy info in TakeoverResponse

* Only return policy in TakeoverResponse if Owner
2021-02-09 06:33:03 +10:00
Matt Gibson
edd4bc2623
Add disable send policy (#1130)
* Add Disable Send policy

* Test DisableSend policy

* PR Review

* Update tests for using CurrentContext

This required making an interface for CurrentContext and mocking out
the members used. The interface can be expanded as needed for tests.

I moved CurrentContext to a folder, which changes the namespace
and causes a lot of file touches, but most are just adding a reference

* Fix failing test

* Update exemption to include all exempt users

* Move all CurrentContext usages to ICurrentContext

* PR review. Match messaging with Web
2021-02-04 12:54:21 -06:00
Addison Beck
cf84453492
added a few global domains (#1129)
* added a few global domains

* fixed a domain
2021-02-02 11:15:33 -05:00
Addison Beck
00853bc250
Import Invite Error (#1121)
* throw error if user is already invited on import

* added back the single InviteUser OrgService method
2021-01-30 17:56:37 -05:00
Addison Beck
445ce33c47
check that SingleOrg policy is enabled before saying users cant create new orgs (#1110)
* check that SingleOrg policy is enabled before saying users cant create new orgs

* fixed org user kick check for SingleOrg

* code review cleanup
2021-01-25 11:19:33 -05:00
Addison Beck
bc4eeff604
changed the address data used to pull sales tax for premium subscriptions (#1109)
* changed the address data used to pull sales tax for premium subscriptions

* nulled checked for extra safety

* fixes null check
2021-01-25 09:56:53 -05:00
Addison Beck
b8a2158626
enabled send and added send sync notifications (#1106) 2021-01-22 16:16:40 -05:00
Vincent Salucci
3555b15b91
[Email] Update welcome content (#1092)
* Initial commit of welcome email update

* Final revisions and updated hosted image urls

* added dynamic year // updated verbiage // fixed typo in text template

* Updated verbiage // changed mustache accessor // updated how year is generated
2021-01-21 14:57:13 -06:00
Chad Scharf
85edc03461
Add SAML 2.0 metadata export for dynamic SPs (#1094) 2021-01-21 15:54:46 -05:00
Oscar Hinton
48d14e8521
Handle name == null in Emergency Access (#1100) 2021-01-20 13:50:07 -05:00
Addison Beck
001bbf2f2b
null checked Stripe.Customer.Address for org seat and storage upgrades (#1099) 2021-01-20 12:40:45 -05:00
Addison Beck
fe4c36c04a
null checked all permissions checks in CurrentContext (#1097) 2021-01-19 23:28:38 -05:00
Kyle Spearrin
61675342c3
added duofederal.com to allowed duo domains (#1091) 2021-01-15 16:59:51 -05:00
Oscar Hinton
adbfd0e107
Fix premium check for emergency access (#1090) 2021-01-15 15:56:17 -05:00
Addison Beck
9b80d97c19
fixed something shameful (#1088) 2021-01-14 18:05:17 -05:00
Addison Beck
c9cab74476
Sales Tax for Premium signups (#1087)
* Started charging sales tax on Premium signups

* added a line break
2021-01-14 17:53:37 -05:00
Addison Beck
9f938f5efd
Permissions bugs (#1083)
* Null checked org invite collections

* Null checked permissions on org invite

* Gave a static seat count to org invite fixture

* Null checked the right way
2021-01-13 15:14:28 -05:00
Vincent Salucci
96cc88aafc
[Policy] Update Personal Ownership checkbox description (#1076)
* Initial commit of checkbox description update

* refactored property name
2021-01-12 11:37:33 -06:00
Addison Beck
63fcdc1418
Implemented Custom role and permissions (#1057)
* Implemented Custom role and permissions

* Converted permissions columns to a json blob

* Code review fixes for Permissions

* sql build fix

* Update Permissions.cs

* formatting

* Update IOrganizationService.cs

* reworked a conditional

* built out tests for relevant organization service methods

* removed unused usings

* fixed a broken test and a bad empty string init

* removed 'Attribute' from some attribute instances
2021-01-12 11:02:39 -05:00
Chad Scharf
99b95b5330
Fix safari sso header size (#1065)
* Safari SSO header size fix - in progress

* Cleanup of memoryCacheTicketStore

* Redis cache ticket store + registration

* Revert some unecessary changes

* temp - distributed cookie: idsrv.external

* Ticket data cached storage added

* OIDC working w/ substantially reduced cookie size

* Added distributed cache cookie manager

* Removed hybrid OIDC flow

* Enable self-hosted folks to use Redis  for SSO

* Also allow self-hosted to use Redis cont...
2021-01-11 11:03:46 -05:00
Matt Gibson
5aba9f7549
Add cipher response to restore (#1072)
* Return revised ciphers on restore api call

* Return restored date from restore sproc

* Test Restore updates passed in ciphers

This is necessary for CipherController to appropriately return the
up-to-date ciphers without an extra db call to read them.

* Add missing SELECT
2021-01-08 08:52:42 -06:00
Justin Baur
aad36496e4
Added Services and Utilities Tests to Core.Test project (#1068)
* Sorted usings

* Added CoreHelpersTests

* Added CloneObject test

* Added comments to SelfHostedAttributeTests

* Changed private variable declaration to be inline with the rest of the project

* Changed to SUT naming scheme

* Scaffolded AppleIapServiceTests

* Scaffolded I18nServiceTests.cs

* Scaffolded I18nViewLocalizerTests

* Scaffolded LocalSendStorageServiceTests

* Added tests to ReadableBytesSize_Success

* Add more CleanCertificateThumbprint tests

* Added more tests for the ExtendQuery method

* Removed AppleIapServiceTests

* Removed I18nServiceTests

* Removed I18nViewLocalizerTests

* Removed LocalSendStorageServiceTests

* Converted Batch_Success to theory with InlineData

* Simplified Batch_Success so there is less branching and more accuracy

* Switched to using size variable to format readable bytes for any number lower than 1024

* Fixed test data to work in all locales
2021-01-06 12:49:28 -06:00
Kyle Spearrin
d96da37e2a
validate send model parameters (#1067) 2020-12-30 16:25:00 -05:00
Chad Scharf
5c5544a4f4
Update forgot password help URL (#1050) 2020-12-18 11:44:15 -05:00
Chad Scharf
246cac1a33
Allow SHA1 inbound sigs from Idp (#1047) 2020-12-18 11:26:52 -05:00
Vincent Salucci
136c39fa50
Initial commit of SingleOrg downstream policy checks (#1038) 2020-12-16 16:02:54 -06:00
Oscar Hinton
0f1af2333e
Add support for Emergency Access (#1000)
* Add support for Emergency Access

* Add migration script

* Review comments

* Ensure grantor has premium when inviting new grantees.

* Resolve review comments

* Remove two factor references
2020-12-16 14:36:47 -05:00
Vincent Salucci
70f5fd5030
[Policy] Personal Ownership (#1013)
* Initial commit of disable personal vault policy

* Added new sproc // updated policy check (was missing conditionals)

* Updated DeMorgan's law logic
2020-12-11 10:45:26 -06:00
Addison Beck
fee5c932db
started charging sales tax on seat/storage upgrades and auto renewals (#1034)
* started charging sales tax on seat/storage upgrades and auto renewals

* Code review fixes for auto-renewing subscriptions charging sales tax
2020-12-09 14:04:46 -05:00
Kyle Spearrin
01d4d97ef1
Ensure that users are confirmed status (#1033) 2020-12-09 12:04:14 -05:00
Matt Gibson
7eaf7ab770
[Bug] Fix cipher clone yielding incorrect RevisionDate (#1031)
* Fix cipher clone yielding incorrect RevisionDate

* PR fixes

Co-authored-by: Matt Gibson <mdgibson@Matts-MBP.lan>
2020-12-07 19:35:34 -06:00
Addison Beck
085987d2f1
fixed a broken link and removed a duplicate property (#1029) 2020-12-07 09:18:25 -05:00
Vincent Salucci
09aea4ed38
[Bug] Improve SSO user provision flow (#1022)
* Initial commit of provisioning updates

* Updated strings

* removed extra BANG

* Separated orgUsers db lookup - prioritized existing user Id

* Updated create sso record method // Added sproc for org/email retrieval
2020-12-04 16:45:54 -06:00
Addison Beck
b877c25234
Implemented tax collection for subscriptions (#1017)
* Implemented tax collection for subscriptions

* Cleanup for Sales Tax

* Cleanup for Sales Tax

* Changes a constraint to an index for checking purposes

* Added and implemented a ReadById method for TaxRate

* Code review fixes for Tax Rate implementation

* Code review fixes for Tax Rate implementation

* Made the SalesTax migration script rerunnable
2020-12-04 12:05:16 -05:00
Chad Scharf
77e704e620
ensure fail isn't overwritten with success result (#1018) 2020-12-02 17:15:21 -05:00
Kyle Spearrin
c0defd8971
require device info when authing (#1014) 2020-12-01 16:42:41 -05:00
Matt Gibson
edf30974dc
Validate cipher updates with revision date (#994)
* Add last updated validation to cipher replacements

* Add AutoFixture scaffolding.

AutoDataAttributes and ICustomizations are meant to automatically
produce valid test input. Examples are the Cipher customizations,
which enforce the model's mutual exclusivity of UserId and
OrganizationId.

FixtureExtensions create a fluent way to generate SUTs. We currently
use parameter injection to fascilitate service testing, which is nicely
handled by AutoNSubstitute. However, in order to gain access to the
substitutions, we need to Freeze them onto the Fixture. The For fluent
method allows specifying a Freeze to a specific type's constructor and
optionally to a parameter name in that constructor.

* Unit tests for single Cipher update version checks

* Fix test runner

Test runner requires Microsoft.NET.Test.Sdk

* Move to provider model for SUT generation

This model differs from previous in that you no longer need to specify
which dependencies you would like access to. Instead, all are
remembered and can be queried through the sutProvider.

* User cipher provided by Put method reads

Every put method already reads all relevant ciphers from database,
there's no need to re-read them.

JSON serialization of datetimes seems to leave truncate at second
precision. Verify last known date time is within one second rather than
exact.

* validate revision date for share many requests

* Update build script to use Github environment path

Co-authored-by: Matt Gibson <mdgibson@Matts-MBP.lan>
2020-11-23 08:48:05 -06:00
Kyle Spearrin
58eb0510ca
add sends to sync response (#1002) 2020-11-18 13:55:50 -05:00
Chad Scharf
80f2bf9260
Fix null email parameter from missing email claim (#993) 2020-11-13 11:26:05 -05:00
Addison Beck
fefa0e2dea
Dont run custom token logic for org based client_ids explicitly (#992)
* Dont run custom token logic for org based client_ids explicitly

* org to organization
2020-11-13 10:07:49 -05:00
Addison Beck
e35faf1335
Performed some null checks (#991) 2020-11-13 08:53:36 -05:00
Addison Beck
dc69f4bd46
Changed the return type for BuildIdentityClaims() (#989) 2020-11-11 10:56:22 -05:00
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
Vincent Salucci
d9cd7551fe
[Exemption] Updated policy messages (#984)
* Updated messages // added exemption message // added callout

* updated strings - futureproofing
2020-11-10 09:53:44 -06:00
Kyle Spearrin
26fb6fc3b7 remove premium checks for internal testing 2020-11-05 12:43:08 -05:00
Kyle Spearrin
82dd364e65
Send APIs (#979)
* send work

* fix sql proj file

* update

* updates

* access id

* delete job

* fix delete job

* local send storage

* update sprocs for null checks
2020-11-02 15:55:49 -05:00
Vincent Salucci
a5db233e51
[Require SSO] Added service layer dependent policy check (#977)
* Added service layer dependent policy check

* Updated to SingleOrg
2020-10-27 14:08:19 -05:00
Addison Beck
0eccfb8784
changed all OnlyOrg wording to be SingleOrg instead (#974)
* changed all OnlyOrg wording to be SingleOrg instead

* missed an OnlyOrg to change to SingleOrg
2020-10-27 10:28:41 -04:00
Vincent Salucci
66e44759f0
[Require SSO] Enterprise policy enforcement (#970)
* Initial commit of require sso authentication policy enforcement

* Updated sproc to send UseSso flag // Updated base validator to send back error message // Added changes to EntityFramework (just so its there for the future

* Update policy name // adjusted conditional to demorgan's

* Updated sproc // Added migrator script

* Added .sql file extension to DeleteOrgUserWithOrg migrator script

* Added policy // edit // strings // validation to business portal

* Change requests from review // Added Owner & Admin exemption

* Updated repository function used to get org user's type

* Updated with requested changes
2020-10-26 11:56:16 -05:00
Addison Beck
e872b4df9d
Only org policy (#962)
* added OnlyOrg to PolicyType enum

* blocked accepting new org invitations if OnlyOrg is relevant to the userOrg

* blocked creating new orgs if already in an org with OnlyOrg enabled

* created email alert for OnlyOrg policy

* removed users & sent alerts when appropriate for the OnlyOrg policy

* added method to noop mail service

* cleanup for OnlyOrg policy server logic

* blocked confirming new org users if they have violated the OnlyOrg policy since accepting

* added localization strings needed for the OnlyOrg policy

* allowed OnlyOrg policy configuration from the portal

* used correct localization key for onlyorg

* formatting and messaging changes for OnlyOrg

* formatting

* messaging change

* code review changes for onlyorg

* slimmed down a conditional

* optimized getting many orgUser records from many userIds

* removed a test file

* sql formatting

* weirdness

* trying to resolve git diff formatting issues
2020-10-20 02:48:10 -04:00
Vincent Salucci
50cf16a3fb
[SSO] New user provision flow (#945)
* Initial commit of accept user during set password flow

* changed new org user from accepted to invited // moved another check to token accept function

* Revised some white space // Moved business logic to UserService

* Fixed UserServiceTest

* Removed some white-space

* Removed more white-space

* Final white-space issues
2020-10-13 15:00:33 -05:00
Addison Beck
9848f12638
enabled SSO when needed when upgrading from a free plan (#960) 2020-10-07 15:03:47 -04:00
Chad Scharf
a74778de3a
Update ACS path to embed Organization ID (#955) 2020-10-01 15:05:09 -04:00
Chad Scharf
3b8cbe631f
Implemented new OIDC redirect behavior (#954) 2020-09-29 17:06:17 -04:00
Addison Beck
845f9f5245
Fixed storage issue when upgrading from a free plan (#942) 2020-09-18 14:10:30 -04:00
Chad Scharf
a75077d703
Fixed resource and err msg for user provisioning (#939) 2020-09-16 15:02:18 -04:00
Kyle Spearrin
1c6c599b8d
Created sso config service with save (#936) 2020-09-15 10:17:44 -04:00
Chad Scharf
692b3970af
SSO config revision date not updating fix (#934) 2020-09-14 21:22:24 -04:00
Vincent Salucci
c0e99d4047
Removed security stamp rotation during set-password SSO flow (#933) 2020-09-14 14:27:30 -05:00
Addison Beck
1880889325
added localization variables to sso account controller (#930)
* added localization variables to sso account controller

* Used the correct method for server side localization
2020-09-11 19:36:49 -04:00
Chad Scharf
b429f6908d
Added X.509 cert validation copy value buttons (#923) 2020-09-09 11:32:33 -04:00
Chad Scharf
a997440e3d
Added SP ACS URL to Config Screen (#920) 2020-09-08 13:04:26 -04:00
Kyle Spearrin
44c3dc4786 fix base seats on teams 2019 2020-09-07 09:19:33 -04:00
Addison Beck
a8277cc58b
updated stripe plan id for family (#916)
* updated stripe plan id for family

* updated famiies 2020 plan plan id
2020-09-06 00:48:04 -04:00
Chad Scharf
f27df01158
update portal landing page with tiles (#915) 2020-09-05 23:06:15 -04:00
Chad Scharf
ed99b99bc1
Move SSO core to Core lib, new resource strings (#911)
* Move SSO core to Core lib, new resource strings

* Missed resource strings for lookup
2020-09-04 10:42:47 -04:00
Addison Beck
5842284915
added custom plan item to the static store (#907) 2020-09-02 15:52:45 -04:00
Chad Scharf
f15768db62
GlobalSettings SSO cache timeout setting in sec (#906)
* GlobalSettings SSO cache timeout setting in sec

* Rename cache duration/lifetime property
2020-09-02 14:51:53 -04:00
Chad Scharf
055fa4b86f
New resource strings for SSO and Redirect pages (#905) 2020-09-02 14:13:27 -04:00
Kyle Spearrin
4439e6b25e use internal URL 2020-09-01 12:28:03 -04:00
Kyle Spearrin
c6aaa1276d AdjustIdentityServerConfig for authorization_endpoint 2020-09-01 12:13:08 -04:00
Kyle Spearrin
ba84c59b5d custom DiscoveryResponseGenerator and helpers 2020-09-01 07:38:36 -04:00
Kyle Spearrin
7a72da5725 fix deprecated mailkit MailboxAddress ctor 2020-08-28 14:21:16 -04:00
Kyle Spearrin
38728143d8
Added static client store (#899) 2020-08-28 13:32:15 -04:00
Chad Scharf
db7d05b52f
Added PreValidate endpoint on Account controller (#896)
* Added PreValidate endpoint on Account controller

* Fixed IHttpClientFactory implementation

* Core localization and org sproc fix

* Pass culture, fixed sso middleware bug
2020-08-28 12:14:23 -04:00
Kyle Spearrin
303b9a7875
Allow org update api on self hosted for identifier only (#898) 2020-08-28 11:22:19 -04:00
Matt Smith
00a1e8e833
Add UseBusinessPortal to OrgUserOrgDetails. (#894) 2020-08-27 11:11:59 -05:00
Addison Beck
59f8467f7c
Create sso user api (#886)
* facilitate linking/unlinking existing users from an sso enabled org

* added user_identifier to identity methods for sso

* moved sso user delete method to account controller

* fixed a broken test

* Update AccountsController.cs

* facilitate linking/unlinking existing users from an sso enabled org

* added user_identifier to identity methods for sso

* moved sso user delete method to account controller

* fixed a broken test

* added a token to the existing user sso link flow

* added a token to the existing user sso link flow

* fixed a typo

* added an event log for unlink ssoUser records

* fixed a merge issue

* fixed a busted test

* fixed a busted test

* ran a formatter over everything & changed .vscode settings in .gitignore

* chagned a variable to use string interpolation

* removed a blank line

* Changed TokenPurpose enum to a static class of strings

* code review cleanups

* formatting fix

* Changed parameters & logging for delete sso user

* changed th method used to get organization user for deleting sso user records

Co-authored-by: Kyle Spearrin <kspearrin@users.noreply.github.com>
2020-08-26 14:12:04 -04:00
Chad Scharf
1c04e30689
Requested configuration cleanup for sso (#891) 2020-08-26 08:45:10 -04:00
Kyle Spearrin
2cd6d4f61a
plan adjustments (#890) 2020-08-25 14:23:36 -04:00
Chad Scharf
2fb18d8cf2
Extracted logic to get Identity cert (#889) 2020-08-25 13:15:59 -04:00
Kyle Spearrin
66e67d2172
map plantype to old strings for license hash (#882) 2020-08-21 17:44:45 -04:00
Kyle Spearrin
e41aca81de
allows dev runs to load a common idserv cert (#881) 2020-08-21 11:58:22 -04:00
Kyle Spearrin
a8c20d1c32
pass down version properly to generate license (#880) 2020-08-20 10:12:27 -04:00
Contribucious
8383a0866f
Add Yandex to global equivalent domains list (#876)
* [enum] Add Yandex to global equivalent domains list

Exhaustive list of Yandex domain names obtained by contacting their support.

* [Dictionary] Add Yandex to global equivalent domains list

Exhaustive list of Yandex domain names obtained by contacting their support.
2020-08-19 18:09:39 -04:00
Chad Scharf
8884157427
Added get for sso config repo by revision date (#878) 2020-08-19 13:35:17 -04:00
Contribucious
80f57d22a7
Remove amazon.co.nz from Amazon equivalent domains (redirect) (#875)
After further research, amazon.co.nz has never been more than a redirect (in order: to amazon.com, amazon.co.uk then back to amazon.com). See PR for more information.
2020-08-18 18:42:10 -04:00
Kyle Spearrin
2872bda6fe
tool to generate licenses (#874)
* tool to generate licenses

* code review feedback
2020-08-18 17:00:21 -04:00
Addison Beck
c65c52d997
Plan updates cleanup (#872)
* updated teams feature set for new plans

* removed whitespace

* alphabatized some properties
2020-08-17 10:45:37 -04:00
Kyle Spearrin
d190c4bd0f
Update APIs to collect other set password info (#870) 2020-08-17 10:40:35 -04:00
Contribucious
af85e17486
[Equivalent domains] Fix for the special case "eBay India" (#871)
See explanations in the PR.
2020-08-17 09:46:17 -04:00
Contribucious
2c430190cb
Add all missing entries to Ebay equivalent domains (#869)
(+ sort the Ebay list alphabetically)
2020-08-14 09:54:05 -04:00
Chad Scharf
38f7fff2f9
Added new SAML2 enums for configuration (#868) 2020-08-13 20:11:23 -04:00
Contribucious
6aed80a67d
Add amazon.{com.br, sa} to Amazon equivalent domains (#864)
(+ sort the Amazon list alphabetically)
2020-08-13 17:38:32 -04:00
Kyle Spearrin
cd926ca8f6
allow user registration for sso (#865) 2020-08-13 17:30:10 -04:00
Kyle Spearrin
4d8090d75e
Fix 2fa dictionary on identity response (#863) 2020-08-13 16:04:50 -04:00
Kyle Spearrin
783b4804ec
SSO support (#862)
* [SSO] Added change password API (#836)

* Created API for updating password with no current comparison

* Changed name of method and request // Added user has password error flow

* Updated user service method name // Updated string null/empty check

* Replaced hardcoded sso domain hints with config loader (#850)

* Replaced hardcoded sso domain hints with config loader

* use async/await for sso config loader

* Update AccountsController.cs

Co-authored-by: Vincent Salucci <26154748+vincentsalucci@users.noreply.github.com>
Co-authored-by: Matt Portune <mportune@bitwarden.com>
Co-authored-by: Matt Portune <59324545+mportune-bw@users.noreply.github.com>
2020-08-12 17:03:09 -04:00
Kyle Spearrin
056b4b9bf4
add api support for updating org identifier (#861)
* add api support for updating org identifier

* add identifier to response as well

* implement in EF repo
2020-08-12 16:38:22 -04:00
Addison Beck
c8220fdfa6
Plan And Price Updates (#859)
* Expanded the Plan model to make plan & product data a bit more dynamic 
* Created a Product enum to track versioned instances of the same plan
* Created and API call and Response model for getting plan & product data from the server
2020-08-11 14:19:56 -04:00
Timo N
61b11e398b
Added netcup to global equivalent domains list (#600) 2020-08-11 09:06:57 -04:00
Chad Scharf
5878d1b0db
Ref event should be base64 encoded (#853) 2020-08-06 20:29:35 -04:00
Jeremy Lin
562082e9ca
Add a complete list of Eventbrite equivalent domains (#851)
This list was extracted using:

$ curl -s https://www.eventbrite.com/ |
    tr '"' '\n' |
    grep -o 'www\.eventbrite\.[^/]*' |
    sed 's/www\.//' |
    sort -u
2020-08-06 14:07:45 -04:00
Kyle Spearrin
004e3c58ee
added more client redirect uris for clis (#849) 2020-08-05 10:53:55 -04:00
Kyle Spearrin
44717b2d4c remove non-verified eventbrite equivalent domains 2020-08-04 08:02:44 -04:00
Chad Scharf
b5ac20ec9f
Correct connection string for res queue (#847) 2020-08-03 15:22:38 -04:00
David Lemayian
ca224c1782
update welcome email download urls (#844)
* update welcome email download urls

Very cool service! Noticed the download urls in the welcome email didn't take me to the downloads. Hope this fixes it?

* Update Welcome.html.hbs

Co-authored-by: Kyle Spearrin <kspearrin@users.noreply.github.com>
2020-08-01 16:18:40 -04:00
Kyle Spearrin
623cd36bd4
upgrade identity server 4 to v4 (#842)
* upgrade identity server 4 to v4

* remove script ref
2020-07-30 17:00:13 -04:00
Kyle Spearrin
aa1665065d
add missing RedirectUris (#840) 2020-07-28 22:49:13 -04:00
Kyle Spearrin
c53e8cbf9d
return if org user has sso binding (#839) 2020-07-28 21:11:45 -04:00
Kyle Spearrin
2c4752f4ac
Sso user table, model and repo stubbed out (#837)
* Sso user table, model and repo stubbed out

* switch to nullable org id, bigint id

* update GetBySsoUserAsync

* cleanup migrator file

* fix EF user repo

* fix pg repo

* is `IS NULL` checks

* unique indexes

* update migration scripts

* add another unique index

* remove old script
2020-07-28 10:03:09 -04:00
Kyle Spearrin
69e8860767
Assign usepolicies when upgrading (#838) 2020-07-28 09:28:11 -04:00
Kyle Spearrin
5de236f294 update libs 2020-07-27 20:36:17 -04:00
Addison Beck
229478adae
Feature.web.534.allow multi select in org vault (#830)
* Set up API methods for bulk admin delete
2020-07-22 11:38:53 -05:00
Matt Portune
51fd87df0b
Added UseSso bool to Organization (#834)
* Added UseSso bool to org

* Update fields in migration script

* bump version & check enabled flag on ssoConfig
2020-07-22 09:38:39 -04:00
Chad Scharf
83e9468502
Transition reference id to data (#828)
* Transition reference id to data

* field length and request model updates
2020-07-20 15:19:46 -04:00
Kyle Spearrin
5892d52ed5 fix protocol 2020-07-16 08:03:57 -04:00
Kyle Spearrin
0d0c6c7167
sso integrations (#822)
* stub out hybrid sso

* support for PKCE authorization_code clients

* sso service urls

* sso client key

* abstract request validator

* support for verifying password

* custom AuthorizationCodeStore that does not remove codes

* cleanup

* comment

* created master password

* ResetMasterPassword

* rename Sso client to OidcIdentity

* update env builder

* bitwarden sso project in docker-compose

* sso path in nginx config
2020-07-16 08:01:39 -04:00
Chad Scharf
2742b414fd
reference event changes and cleanup (#823) 2020-07-15 12:38:45 -04:00
Matt Portune
92238eb0a9
Additional changes for enterprise portal sso config (#819)
* Additional changes for enterprise portal sso config

* Requested changes

* rename enum to Saml2

* Limit to one SSO config per org
2020-07-13 15:58:59 -04:00
Chad Scharf
7af50172e0
Reference event service implementation (#811)
* Reference event service implementation

* Fix IReferenceable implementation of Id

* add structure to event body
2020-07-07 12:01:34 -04:00
Vincent Salucci
b4524fbcb6
Added BusinessPortal property for use on client side (#810) 2020-07-06 12:59:57 -05:00
Chad Scharf
a37706eba1
Restore original collection method (#804) 2020-06-30 11:52:50 -04:00
Chad Scharf
d7b00f6c27
Subscription update to maintain auto charge (#803) 2020-06-29 20:29:19 -04:00
Kyle Spearrin
6bc7a3cdc0
adjust cors origin checks (#800)
* allow cors from bitwarden.com on cloud

* allow file:// cors for safari extension

* fix missing paren
2020-06-27 15:08:50 -04:00
Kyle Spearrin
b524029e5c bump dependency versions 2020-06-26 16:17:46 -04:00
Matt Portune
da9b81d552
Merge pull request #796 from bitwarden/sso-dal
Additional SSO & Org Identifier work
2020-06-26 10:47:17 -04:00
Matt Portune
bc5ea25d0b removed ssoConfig request/response models 2020-06-26 10:03:25 -04:00
Matt Portune
f46023f2f5 requested changes 2020-06-25 18:06:27 -04:00
Matt Portune
39a81af3e9 DAL & CRUD for SSO 2020-06-25 16:42:29 -04:00
Chad Scharf
47a6e607c6 Fixed validation error for Free org accounts 2020-06-25 15:58:08 -04:00
Chad Scharf
fca7b162bf Reference id storage and signup 2020-06-25 12:28:22 -04:00
Kyle Spearrin
f23a8edc45
Update stripe lib (#793) 2020-06-24 21:24:19 -04:00
Kyle Spearrin
8559e144c6 bump dependency minor/patch versions 2020-06-24 16:37:23 -04:00
Kyle Spearrin
cf70a5e480
set cors policies to only allow web vault origin (#787)
* set cors policy to only allow web vault

* vault cors policy service
2020-06-23 18:47:53 -04:00
Mike Hanson
398867a839 Parameterize AmazonSQSClient to allow testing 2020-06-18 10:16:23 -07:00
Chad Scharf
61b15c55d0
Merge pull request #782 from bitwarden/feature/tax-info-collection
Combined tax updates with other operations
2020-06-18 11:26:58 -04:00
Chad Scharf
0f28ac45f9 Consistency on TaxInfo use in service params 2020-06-18 10:41:55 -04:00
Kyle Spearrin
aeb6e4e7d4 formatting 2020-06-18 09:57:24 -04:00
Mike Hanson
dc42be710a
Add unit test coverage for AmazonSesMailDeliveryService (#783)
* Parameterize AmazonSimpleEmailServiceClient to allow testing

* Add unit test coverage for AmazonSesMailDeliveryService
2020-06-18 09:55:46 -04:00
Chad Scharf
b7a500eb63 combined tax updates with other operations 2020-06-17 19:49:27 -04:00
Chad Scharf
f7e5f1f15e
Merge pull request #776 from bitwarden/feature/tax-info-collection
Feature/tax info collection
2020-06-17 10:49:54 -04:00
Hinton
7145e3ea88 On create default ViewPassword to true. 2020-06-15 18:54:32 +02:00
Chad Scharf
b2cb9a2f69 Billing addr line1 fix, pr feedback 2020-06-15 09:12:03 -04:00
Chad Scharf
1552ff7b29 Collect tax info, correct line1 2020-06-12 19:35:17 -04:00
Pedro Lamas
21834223fd
Adds extra Amazon equivalent domains (#775) 2020-06-12 10:25:08 -04:00
Chad Scharf
5b3f81f47e
Merge pull request #743 from Hinton/feature/hide-passwords
Add support collection access, hide passwords
2020-06-11 14:24:04 -04:00
Code
d2625e47e1
Remove trailing comma and adjust formatting of some of the equivalent domain strings to match the rest (#773) 2020-06-09 16:53:48 -04:00
Kyle Spearrin
a7d7736806
Add i18nservice abstraction (#770) 2020-06-09 10:25:37 -04:00
Chad Scharf
d88838f19e API updates for tax info collection 2020-06-08 17:40:18 -04:00
Connor Gibson
cad7cf0200
Add office.com to Microsoft default equivalent domains. (#769) 2020-06-06 21:08:26 -04:00
Kyle Spearrin
4bd3e01a80
abstract context building to overrideable SetContextAsync (#766)
* abstract context building to overrideable SetContextAsync

* update method calls
2020-06-04 14:14:43 -04:00
André Paulo
e1a0d59fd1
Added Discord to Global Equivalent Domain (#752)
* add Discord to GlobalEquivalentDomainsType

* added discord domains to global domains
2020-05-28 19:48:51 -04:00
Matt Portune
0d156776cb
Merge pull request #737 from bitwarden/self-hosted-exp-email
License expiration email for self-hosted org/premium accounts
2020-05-27 09:07:47 -04:00
Roman V
a421be731c
Add syslog suport for sending application logs to a Syslog server (#742)
* Add syslog suport for sending application logs to a Syslog server

* Rename SyslogSettings.Certificate to SyslogSettings.CertificatePath
2020-05-22 21:19:59 -04:00
hinton
f2348d2264 Resolve review comments 2020-05-22 22:16:01 +02:00
hinton
36f15c67d0 Add support for new collection access, hide passwords 2020-05-21 15:38:57 +02:00
Matt Portune
545948220a additional formatting & inclusion of org name 2020-05-19 18:22:03 -04:00
Matt Portune
9bf3a467fa formatting 2020-05-19 12:37:45 -04:00
Kyle Spearrin
c205bf72e6 update some libs 2020-05-18 21:57:14 -04:00
Matt Portune
2cf7f18858 License expiration email for self-hosted org/premium accounts 2020-05-18 16:06:34 -04:00
Chad Scharf
d49cc18a41 Stripe not crediting customer balance after void 2020-05-18 12:38:00 -04:00
Chad Scharf
97158d607a
Merge pull request #727 from bitwarden/subscription-change-invoicing
Subscription change, invoice process update
2020-05-13 10:24:46 -04:00
Chad Scharf
9ef39bcadb Removed payment_behavior, errant whitespace 2020-05-13 09:54:10 -04:00
Chad Scharf
a024b43cea Updated code style and PR feedback 2020-05-12 17:22:04 -04:00
Kyle Spearrin
10a6e12d09
generate signin token for enterprise portal (#728) 2020-05-12 15:36:33 -04:00
Chad Scharf
a9a7003bfc Subscription change, invoice process update 2020-05-12 12:48:21 -04:00
Chad Scharf
9a2d8e96e4 Updated Stripe API SDK version to 36.9.0 2020-05-08 10:15:48 -04:00
Kyle Spearrin
3c5cd0ffb2 brand color updates 2020-05-05 17:08:53 -04:00
Kyle Spearrin
fae4a335dc
public API for organization import (#707) 2020-04-23 11:29:19 -04:00
Kyle Spearrin
c177714799
Remove www. URL from alibaba (#701) 2020-04-16 10:38:39 -04:00
Chad Scharf
145dcabba6 [Soft Delete] bulk import fails if DeletedDate null 2020-04-10 13:43:51 -04:00
Chad Scharf
4defd13395 [Soft Delete] - fix Upsert calls based on cipher supertype 2020-04-08 16:18:22 -04:00
Chad Scharf
c0019e7abc [Soft Delete] Update assignment of deleted and revision date to 1-liner 2020-04-02 10:56:22 -04:00
Chad Scharf
d07f27f274 [Soft-Delete] Simplify the data-tier, removed extra sprocs and reuse update 2020-04-01 16:39:27 -04:00
Chad Scharf
d014a597dd [Soft Delete] - API updates for soft delete + retrieval 2020-04-01 13:00:25 -04:00
Chad Scharf
9800b752c0 Changed all C# control flow block statements to include space between keyword and open paren 2020-03-27 14:36:37 -04:00
Chad Scharf
55b937ff68 Updated PR comments, changed smart defaults for behavior, updated Cipher table index 2020-03-27 10:23:37 -04:00
Chad Scharf
bc46eccf70 Deleted date on Cipher table, related sprocs and repositories updated 2020-03-26 19:32:37 -04:00
Kyle Spearrin
1331cc90f7 check SettingHasValue instead of empty 2020-03-19 11:10:23 -04:00
Kyle Spearrin
9520a646ad UserId added to MemberResponseModel 2020-03-17 12:05:06 -04:00
David Roth
b7b06d77df
Use correct sentry integration package. Fixes #669 (#670) 2020-03-16 08:25:46 -04:00
Kyle Spearrin
7dc959c058 return empty policies array if none 2020-03-12 15:05:46 -04:00
Kyle Spearrin
0f9ec8d64f check user has 2fa enabled when confirming 2020-03-09 15:13:40 -04:00
Kyle Spearrin
218fec52f1 allow maintenance tasks to take 48 hours 2020-03-08 20:59:03 -04:00
Kyle Spearrin
518e94f60f upgrade more lgos. remove sendgrid 2020-03-05 10:33:44 -05:00
Kyle Spearrin
cd0ec26b07 upgrade libs 2020-03-04 22:01:28 -05:00
Kyle Spearrin
172525bf86 Merge branch 'master' of github.com:bitwarden/server 2020-03-04 21:57:50 -05:00
Kyle Spearrin
c8d7f04826 signalr redis support. remove old azure signalr refs 2020-03-04 21:57:42 -05:00
Alex Knight
d2fcf8f572
Additional Equivalent Domains Fix #649 (#662)
* Additional Equivalent Domains Fix #649

* Remove infinitysrv.com as resolves to 127.0.0.1
2020-03-04 10:55:58 -05:00
Kyle Spearrin
7b91fe55f0 set UsePolicies on license update 2020-03-03 22:32:59 -05:00
Kyle Spearrin
d5aa7b5624 allow configuring the validation urls for yubico otp servers 2020-03-03 08:32:50 -05:00
Kyle Spearrin
71d9ffdd9d
CheckPoliciesOnTwoFactorRemoval for 2fa recovery (#659) 2020-02-28 10:23:19 -05:00
Kyle Spearrin
ae893c72bd formatting 2020-02-28 09:15:47 -05:00
Kyle Spearrin
621192b701
enable email 2fa if joining an org with policy (#658) 2020-02-28 09:14:33 -05:00
Kyle Spearrin
0b9125be9c add column mapping to sql bulk copies 2020-02-27 22:45:43 -05:00
Kyle Spearrin
f54ebfdc75
email user whenever they're removed from org because of 2fa policy (#657) 2020-02-27 09:30:03 -05:00
Kyle Spearrin
81424a8526
Enforce 2fa policy (#654) 2020-02-19 14:56:16 -05:00
Kyle Spearrin
71995b21ee add check type to payment methods 2020-02-07 16:38:33 -05:00
Tristan Berger
b6274ac728
Add Envato network to equivalent domain sets (#647)
* Add Envato network to equivalent domain sets

Envato is an Alexa top 500 website that asks you to use the same login on many different domains. The login forms are on those domains, not envato.com.

For my use case, account-level domain equivalence rules don’t work because I want to share this with a team, and multiple URLs per login is duplicative because we have multiple Envato logins.

tutsplus.com is another Envato domain that accepts Envato logins, but I believe it also accepts tutsplus.com-specific logins, making it not fully equivalent.

* Add Envato to GlobalEquivalentDomainsType
2020-02-01 15:31:40 -05:00
Kyle Spearrin
725522128c sync org policies to client devices 2020-01-28 15:33:32 -05:00
Kyle Spearrin
82be2ae06b parse cancellation dates to detect refunds 2020-01-28 09:24:00 -05:00
Mario Limonciello
2c68e01e14 Add Docusign to equivalent domains (#642) 2020-01-23 22:10:23 -05:00
Kyle Spearrin
9266546d60 only 1 policy event 2020-01-20 09:02:41 -05:00
Kyle Spearrin
f3f1ac57d2 refactor policy apis 2020-01-20 08:53:15 -05:00
Kyle Spearrin
ff8731c82f add usepolicies to org profile object 2020-01-15 15:17:32 -05:00
Kyle Spearrin
0790f9859e usepolicies check 2020-01-15 15:01:31 -05:00
Kyle Spearrin
e8054df5b4 use policies property for orgs 2020-01-15 15:00:54 -05:00
Kyle Spearrin
58faf5266b policy events 2020-01-15 09:43:49 -05:00
Kyle Spearrin
3f9b44f493 public policy apis 2020-01-15 09:19:55 -05:00
Kyle Spearrin
937bb4359f policy service 2020-01-15 09:19:28 -05:00
Kyle Spearrin
85f32f450b policy controller 2020-01-15 08:35:53 -05:00
Kyle Spearrin
0628fb682e rename policy types 2020-01-15 08:19:47 -05:00
Kyle Spearrin
dda3c3a123 Async GetEmbeddedCertificate 2020-01-13 15:35:50 -05:00
Kyle Spearrin
3f4a4bac2a copytoasync 2020-01-13 15:32:22 -05:00
Kyle Spearrin
13370e011f fix admin cookie expiration 2020-01-13 12:03:10 -05:00
Kyle Spearrin
b1e8d16b9d update some libs 2020-01-13 09:33:12 -05:00
Kyle Spearrin
bc0901348b calculate storage updates 2020-01-10 20:05:58 -05:00
Kyle Spearrin
5bb440563f just type mapping for json docs 2020-01-10 18:54:44 -05:00
Kyle Spearrin
d653629e79 EF repo fixes 2020-01-10 18:14:45 -05:00
Kyle Spearrin
47b50e48ef update libs 2020-01-10 16:14:16 -05:00
Mart124
f7512445e4 Add windowsazure.com to eq domains (#637)
* Add windowsazure.com to eq domains

* Add azure.com to eq domains
2020-01-10 11:53:11 -05:00
Kyle Spearrin
7fd6e4359d fix warnings 2020-01-10 08:47:58 -05:00
Kyle Spearrin
29580684a3 upgrade to aspnet core 3.1 2020-01-10 08:33:13 -05:00
Kyle Spearrin
8026912eeb fixes for databasecontext and json types 2020-01-09 07:57:33 -05:00
Kyle Spearrin
002efaafd4 map json columns for org and user 2020-01-08 21:38:32 -05:00
Kyle Spearrin
9fa7f335bd org repo 2020-01-08 21:34:49 -05:00
Kyle Spearrin
46c258428e delete typoed class 2020-01-08 20:31:31 -05:00
Kyle Spearrin
7c5be176fa Stub out EF repo base with user repo 2020-01-08 20:28:16 -05:00
Kyle Spearrin
9caaab0537 stub out policy models and repos 2020-01-06 14:27:16 -05:00
Kyle Spearrin
36e97ccbd2 update 2fa recovery email copy 2019-12-23 15:31:55 -05:00
Kyle Spearrin
ad010f6080 Merge branch 'master' of github.com:bitwarden/server 2019-12-23 15:26:47 -05:00
Brian Becker
0be86072f7 Add email notification on Two Factor recovery use (#625)
* Add email notification on Two Factor recovery use

* A user who has lost their 2fa device can clear out the
  2fa settings using a recovery code.  When this happens
  it gets logged but no notification to the user occurs.
* Add a notification to be sent when 2fa recovery code is
  used

* Add email message templates
2019-12-23 15:26:39 -05:00
Kyle Spearrin
e2d65e5b08 switch to official bitpay light library 2019-12-19 10:27:06 -05:00
Kyle Spearrin
a5b809f477 update rolling file settings for LogRollBySizeLimit 2019-11-25 11:40:04 -05:00
Kyle Spearrin
654eb5e15f further validate email for org users 2019-11-25 10:57:55 -05:00
Kyle Spearrin
c7d34a7ac6 fix typo. roll 2019-11-22 10:36:17 -05:00
Kyle Spearrin
d270311393 config for rolling log files by size limit 2019-11-22 10:33:57 -05:00
Kyle Spearrin
2693ffeab0 include ip in log message. only for self host 2019-11-22 10:23:11 -05:00
Kyle Spearrin
d022517762 login failed log message 2019-11-22 07:30:32 -05:00
Kyle Spearrin
72750cf298 org re-invite api 2019-10-07 16:23:38 -04:00
Kyle Spearrin
5fd9df3beb app in review flag for iap receipt validation 2019-09-29 20:42:53 -04:00