Skip to content

Commit f063af6

Browse files
committed
Use Duende.AspNetCore extensions for DPoP
Also update to latest IdentityServer
1 parent 9171451 commit f063af6

14 files changed

+21
-987
lines changed

src/Api/TestController.cs

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
using DPoPApi;
2-
using Microsoft.AspNetCore.Authorization;
1+
using Microsoft.AspNetCore.Authorization;
32
using Microsoft.AspNetCore.Mvc;
3+
using IdentityModel;
44

55
namespace Duende.IdentityServer.Demo
66
{
@@ -10,8 +10,8 @@ public class TestController : ControllerBase
1010
[Authorize(AuthenticationSchemes = IdentityServerConstants.LocalApi.AuthenticationScheme)]
1111
public IActionResult Get()
1212
{
13-
var scheme = Request.GetAuthorizationScheme();
14-
var proofToken = Request.GetDPoPProofToken();
13+
var scheme = GetAuthorizationScheme(Request);
14+
var proofToken = GetDPoPProofToken(Request);
1515

1616
var claims = User.Claims.Select(c => new { c.Type, c.Value }).ToList();
1717

@@ -28,14 +28,24 @@ public IActionResult Get()
2828
[Authorize(AuthenticationSchemes = "dpop")]
2929
public IActionResult GetDPoP()
3030
{
31-
var scheme = Request.GetAuthorizationScheme();
32-
var proofToken = Request.GetDPoPProofToken();
31+
var scheme = GetAuthorizationScheme(Request);
32+
var proofToken = GetDPoPProofToken(Request);
3333

3434
var claims = User.Claims.Select(c => new { c.Type, c.Value }).ToList();
3535
claims.Add(new { Type = "authorization_scheme", Value = scheme });
3636
claims.Add(new { Type = "proof_token", Value = proofToken });
3737

3838
return new JsonResult(claims);
3939
}
40+
41+
private static string GetAuthorizationScheme(HttpRequest request)
42+
{
43+
return request.Headers.Authorization.FirstOrDefault()?.Split(' ', StringSplitOptions.RemoveEmptyEntries)[0];
44+
}
45+
46+
private static string GetDPoPProofToken(HttpRequest request)
47+
{
48+
return request.Headers[OidcConstants.HttpHeaders.DPoP].FirstOrDefault();
49+
}
4050
}
4151
}

src/DPoP/ConfigureJwtBearerOptions.cs

Lines changed: 0 additions & 35 deletions
This file was deleted.

src/DPoP/DPoPExtensions.cs

Lines changed: 0 additions & 81 deletions
This file was deleted.

src/DPoP/DPoPJwtBearerEvents.cs

Lines changed: 0 additions & 153 deletions
This file was deleted.

src/DPoP/DPoPMode.cs

Lines changed: 0 additions & 13 deletions
This file was deleted.

src/DPoP/DPoPOptions.cs

Lines changed: 0 additions & 15 deletions
This file was deleted.

src/DPoP/DPoPProofValidatonContext.cs

Lines changed: 0 additions & 30 deletions
This file was deleted.

0 commit comments

Comments
 (0)