mirror of
https://github.com/bitwarden/server
synced 2025-12-11 05:43:35 +00:00
pm-24210-v2 (#6144)
This commit is contained in:
@@ -95,8 +95,7 @@ public class DeviceValidator(
|
|||||||
|
|
||||||
// Device still unknown, but if we are in an auth request flow, this is not valid
|
// Device still unknown, but if we are in an auth request flow, this is not valid
|
||||||
// as we only support auth request authN requests on known devices
|
// as we only support auth request authN requests on known devices
|
||||||
if (request.GrantType == PasswordGrantType && isAuthRequest &&
|
if (request.GrantType == PasswordGrantType && isAuthRequest)
|
||||||
context is { TwoFactorRequired: false, SsoRequired: false })
|
|
||||||
{
|
{
|
||||||
(context.ValidationErrorResult, context.CustomResponse) =
|
(context.ValidationErrorResult, context.CustomResponse) =
|
||||||
BuildDeviceErrorResult(DeviceValidationResultType.AuthRequestFlowUnknownDevice);
|
BuildDeviceErrorResult(DeviceValidationResultType.AuthRequestFlowUnknownDevice);
|
||||||
|
|||||||
@@ -324,13 +324,26 @@ public class DeviceValidatorTests
|
|||||||
Assert.True(result);
|
Assert.True(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Theory, BitAutoData]
|
[Theory]
|
||||||
|
[BitAutoData(false, false)]
|
||||||
|
[BitAutoData(true, false)]
|
||||||
|
[BitAutoData(true, true)]
|
||||||
|
[BitAutoData(true, false)]
|
||||||
|
|
||||||
public async void ValidateRequestDeviceAsync_IsAuthRequest_UnknownDevice_Errors(
|
public async void ValidateRequestDeviceAsync_IsAuthRequest_UnknownDevice_Errors(
|
||||||
|
bool twoFactoRequired, bool ssoRequired,
|
||||||
CustomValidatorRequestContext context,
|
CustomValidatorRequestContext context,
|
||||||
[AuthFixtures.ValidatedTokenRequest] ValidatedTokenRequest request)
|
[AuthFixtures.ValidatedTokenRequest] ValidatedTokenRequest request)
|
||||||
{
|
{
|
||||||
// Arrange
|
// Arrange
|
||||||
ArrangeForHandleNewDeviceVerificationTest(context, request);
|
request.GrantType = "password";
|
||||||
|
context.TwoFactorRequired = twoFactoRequired;
|
||||||
|
context.SsoRequired = ssoRequired;
|
||||||
|
if (context.User != null)
|
||||||
|
{
|
||||||
|
context.User.CreationDate = DateTime.UtcNow - TimeSpan.FromDays(365);
|
||||||
|
}
|
||||||
|
|
||||||
AddValidDeviceToRequest(request);
|
AddValidDeviceToRequest(request);
|
||||||
_deviceRepository.GetByIdentifierAsync(context.Device.Identifier, context.User.Id)
|
_deviceRepository.GetByIdentifierAsync(context.Device.Identifier, context.User.Id)
|
||||||
.Returns(null as Device);
|
.Returns(null as Device);
|
||||||
|
|||||||
Reference in New Issue
Block a user