mirror of
https://github.com/bitwarden/server.git
synced 2025-01-10 20:07:56 +01:00
Initial commit of SingleOrg downstream policy checks (#1038)
This commit is contained in:
parent
0f1af2333e
commit
136c39fa50
@ -135,7 +135,20 @@ namespace Bit.Portal.Controllers
|
||||
case PolicyType.MasterPassword:
|
||||
case PolicyType.PasswordGenerator:
|
||||
case PolicyType.TwoFactorAuthentication:
|
||||
break;
|
||||
|
||||
case PolicyType.SingleOrg:
|
||||
if (enabled)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
var requireSso =
|
||||
await _policyRepository.GetByOrganizationIdTypeAsync(orgId.Value, PolicyType.RequireSso);
|
||||
if (requireSso?.Enabled == true)
|
||||
{
|
||||
ModelState.AddModelError(string.Empty, _i18nService.T("DisableRequireSsoError"));
|
||||
}
|
||||
break;
|
||||
|
||||
case PolicyType.RequireSso:
|
||||
@ -143,6 +156,7 @@ namespace Bit.Portal.Controllers
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
var singleOrg = await _policyRepository.GetByOrganizationIdTypeAsync(orgId.Value, PolicyType.SingleOrg);
|
||||
if (singleOrg?.Enabled != true)
|
||||
{
|
||||
|
@ -575,4 +575,7 @@
|
||||
<data name="PersonalOwnershipExemption" xml:space="preserve">
|
||||
<value>Organization Owners and Administrators are exempt from this policy's enforcement.</value>
|
||||
</data>
|
||||
<data name="DisableRequireSsoError" xml:space="preserve">
|
||||
<value>You must manually disable the Single Sign-On Authentication policy before this policy can be disabled.</value>
|
||||
</data>
|
||||
</root>
|
||||
|
@ -48,6 +48,18 @@ namespace Bit.Core.Services
|
||||
// Handle dependent policy checks
|
||||
switch(policy.Type)
|
||||
{
|
||||
case PolicyType.SingleOrg:
|
||||
if (!policy.Enabled)
|
||||
{
|
||||
var requireSso =
|
||||
await _policyRepository.GetByOrganizationIdTypeAsync(org.Id, PolicyType.RequireSso);
|
||||
if (requireSso?.Enabled == true)
|
||||
{
|
||||
throw new BadRequestException("Single Sign-On Authentication policy is enabled.");
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case PolicyType.RequireSso:
|
||||
if (policy.Enabled)
|
||||
{
|
||||
@ -58,9 +70,6 @@ namespace Bit.Core.Services
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
var now = DateTime.UtcNow;
|
||||
|
Loading…
Reference in New Issue
Block a user