DDT.Packages.InBoundAuthorization 1.3.2

There is a newer version of this package available.
See the version list below for details.
dotnet add package DDT.Packages.InBoundAuthorization --version 1.3.2
NuGet\Install-Package DDT.Packages.InBoundAuthorization -Version 1.3.2
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DDT.Packages.InBoundAuthorization" Version="1.3.2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DDT.Packages.InBoundAuthorization --version 1.3.2
#r "nuget: DDT.Packages.InBoundAuthorization, 1.3.2"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install DDT.Packages.InBoundAuthorization as a Cake Addin
#addin nuget:?package=DDT.Packages.InBoundAuthorization&version=1.3.2

// Install DDT.Packages.InBoundAuthorization as a Cake Tool
#tool nuget:?package=DDT.Packages.InBoundAuthorization&version=1.3.2

In Bound Authorization

Flow

  • The gateway verifies the token is valid against the identity API
  • It requests the user id, email and roles from the Auth API
  • The gateway uses our package to add a header with the encoded data
  • it sends the encoded data to the service
  • the service uses our package authorization scheme to validate the roles
  • it's compatible with the regular authorization flow so there is no learning curve or anything different

Usage

Issuer Side

  • install dotnet add package DDT.Packages.InBoundAuthorization --version 1.3.2
  • add context.Request.Headers.AddDDTInBoundAuthorization(new DDTInBoundAuthToken([user.Id](http://user.id/), user.Email, user.Roles)); wherever you want to inject the token into the headers

Resource Side

  • install dotnet add package DDT.Packages.InBoundAuthorization --version 1.3.2

  • in your program.cs

    • add
    builder.Services.AddAuthentication(DDTInBoundAuth.Scheme).AddDDTInBoundAuthorization();
    
    • add
    app.UseAuthentication();
    
    app.UseAuthorization();
    
  • in your controller

    • add
    [Authorize(Roles ="roleName")]
    
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.3.2 778 2/6/2023
1.3.2 1,142 10/27/2022