refact
This commit is contained in:
parent
ec5bd7ca1f
commit
1b2d850522
33 changed files with 49 additions and 88 deletions
24
Models/Consent/ConsentInputModel.cs
Normal file
24
Models/Consent/ConsentInputModel.cs
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
// Copyright (c) Brock Allen & Dominick Baier. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See LICENSE in the project root for license information.
|
||||
|
||||
|
||||
using System.Collections.Generic;
|
||||
using IdentityServer4.Models;
|
||||
|
||||
namespace IdentityServerHost.Quickstart.UI
|
||||
{
|
||||
public class ConsentInputModel
|
||||
{
|
||||
public string Button { get; set; }
|
||||
public IEnumerable<string> ScopesConsented { get; set; }
|
||||
public bool RememberConsent { get; set; }
|
||||
public string ReturnUrl { get; set; }
|
||||
public string Description { get; set; }
|
||||
public string ClientName { get; internal set; }
|
||||
public string ClientUri { get; internal set; }
|
||||
public string LogoUri { get; internal set; }
|
||||
public bool AllowRememberConsent { get; internal set; }
|
||||
public ValidatedResources ValidatedResources { get; internal set; }
|
||||
public Client Client { get; internal set; }
|
||||
}
|
||||
}
|
||||
16
Models/Consent/ConsentOptions.cs
Normal file
16
Models/Consent/ConsentOptions.cs
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
// Copyright (c) Brock Allen & Dominick Baier. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See LICENSE in the project root for license information.
|
||||
|
||||
|
||||
namespace IdentityServerHost.Quickstart.UI
|
||||
{
|
||||
public class ConsentOptions
|
||||
{
|
||||
public static bool EnableOfflineAccess = true;
|
||||
public static string OfflineAccessDisplayName = "Offline Access";
|
||||
public static string OfflineAccessDescription = "Access to your applications and resources, even when you are offline";
|
||||
|
||||
public static readonly string MustChooseOneErrorMessage = "You must pick at least one permission";
|
||||
public static readonly string InvalidSelectionErrorMessage = "Invalid selection";
|
||||
}
|
||||
}
|
||||
20
Models/Consent/ConsentViewModel.cs
Normal file
20
Models/Consent/ConsentViewModel.cs
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
// Copyright (c) Brock Allen & Dominick Baier. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See LICENSE in the project root for license information.
|
||||
|
||||
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace IdentityServerHost.Quickstart.UI
|
||||
{
|
||||
public class ConsentViewModel : ConsentInputModel
|
||||
{
|
||||
public string ClientLogoUrl { get; set; }
|
||||
public string ClientUrl { get; set; }
|
||||
|
||||
public IEnumerable<ScopeViewModel> ApiScopes { get; set; }
|
||||
|
||||
public IEnumerable<ScopeViewModel> IdentityScopes { get; set; }
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
29
Models/Consent/ParsedScopes.cs
Normal file
29
Models/Consent/ParsedScopes.cs
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
// Copyright (c) Brock Allen & Dominick Baier. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See LICENSE in the project root for license information.
|
||||
|
||||
|
||||
using System.Collections.Generic;
|
||||
using IdentityServer4.Models;
|
||||
|
||||
namespace IdentityServerHost.Quickstart.UI
|
||||
{
|
||||
public class ParsedScopes
|
||||
{
|
||||
public ParsedScopes(ParsedSecret secret)
|
||||
{
|
||||
RawValue = secret.Properties.ContainsKey(KEY_SCOPES) ? null : secret.Properties[KEY_SCOPES];
|
||||
Emphasize = secret.Properties.ContainsKey(KEY_OL);
|
||||
if (secret.Properties.ContainsKey(KEY_SCOPES)) Scopes = secret.Properties[KEY_SCOPES].Split(',');
|
||||
}
|
||||
|
||||
public const string KEY_SCOPES = "scopes";
|
||||
public const string KEY_OL = "ol";
|
||||
public string RawValue {
|
||||
get ;
|
||||
}
|
||||
|
||||
|
||||
public string[] Scopes { get ; protected set; }
|
||||
public bool Emphasize { get; }
|
||||
}
|
||||
}
|
||||
21
Models/Consent/ProcessConsentResult.cs
Normal file
21
Models/Consent/ProcessConsentResult.cs
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
// Copyright (c) Brock Allen & Dominick Baier. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See LICENSE in the project root for license information.
|
||||
|
||||
|
||||
using IdentityServer4.Models;
|
||||
|
||||
namespace IdentityServerHost.Quickstart.UI
|
||||
{
|
||||
public class ProcessConsentResult
|
||||
{
|
||||
public bool IsRedirect => RedirectUri != null;
|
||||
public string RedirectUri { get; set; }
|
||||
public Client Client { get; set; }
|
||||
|
||||
public bool ShowView => ViewModel != null;
|
||||
public ConsentViewModel ViewModel { get; set; }
|
||||
|
||||
public bool HasValidationError => ValidationError != null;
|
||||
public string ValidationError { get; set; }
|
||||
}
|
||||
}
|
||||
30
Models/Consent/QSAuthorizationRequest.cs
Normal file
30
Models/Consent/QSAuthorizationRequest.cs
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
// Copyright (c) Brock Allen & Dominick Baier. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See LICENSE in the project root for license information.
|
||||
|
||||
|
||||
using IdentityServer4.Models;
|
||||
using IdentityServer4.Validation;
|
||||
using NuGet.Packaging;
|
||||
|
||||
namespace nuget_host.OAuth
|
||||
{
|
||||
internal class NHAuthorizationRequest : AuthorizationRequest
|
||||
{
|
||||
internal NHAuthorizationRequest(ValidatedAuthorizeRequest request) : base()
|
||||
{
|
||||
ClientId = request.ClientId;
|
||||
RedirectUri = request.RedirectUri;
|
||||
DisplayMode = request.DisplayMode;
|
||||
UiLocales = request.UiLocales;
|
||||
IdP = request.GetIdP();
|
||||
Tenant = request.GetTenant();
|
||||
LoginHint = request.LoginHint;
|
||||
PromptMode = request.PromptMode;
|
||||
AcrValues = request.GetAcrValues();
|
||||
ScopesRequested = request.RequestedScopes;
|
||||
Parameters.Add(request.Raw);
|
||||
RequestObjectValues.AddRange(request.RequestObjectValues);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
16
Models/Consent/ScopeViewModel.cs
Normal file
16
Models/Consent/ScopeViewModel.cs
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
// Copyright (c) Brock Allen & Dominick Baier. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See LICENSE in the project root for license information.
|
||||
|
||||
|
||||
namespace IdentityServerHost.Quickstart.UI
|
||||
{
|
||||
public class ScopeViewModel
|
||||
{
|
||||
public string Value { get; set; }
|
||||
public string DisplayName { get; set; }
|
||||
public string Description { get; set; }
|
||||
public bool Emphasize { get; set; }
|
||||
public bool Required { get; set; }
|
||||
public bool Checked { get; set; }
|
||||
}
|
||||
}
|
||||
17
Models/Consent/ValidatedResource.cs
Normal file
17
Models/Consent/ValidatedResource.cs
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
// Copyright (c) Brock Allen & Dominick Baier. All rights reserved.
|
||||
// Licensed under the Apache License, Version 2.0. See LICENSE in the project root for license information.
|
||||
|
||||
|
||||
using IdentityServer4.Models;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace IdentityServerHost.Quickstart.UI
|
||||
{
|
||||
public class ValidatedResources
|
||||
{
|
||||
public Resources Resources { get; set; }
|
||||
public ParsedScopes ParsedScopes { get; internal set; }
|
||||
public bool OfflineAccess { get; internal set; }
|
||||
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue