ArowSoftware.AuthClient 1.0.0

dotnet add package ArowSoftware.AuthClient --version 1.0.0
                    
NuGet\Install-Package ArowSoftware.AuthClient -Version 1.0.0
                    
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="ArowSoftware.AuthClient" Version="1.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ArowSoftware.AuthClient" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="ArowSoftware.AuthClient" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add ArowSoftware.AuthClient --version 1.0.0
                    
#r "nuget: ArowSoftware.AuthClient, 1.0.0"
                    
#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.
#:package ArowSoftware.AuthClient@1.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=ArowSoftware.AuthClient&version=1.0.0
                    
Install as a Cake Addin
#tool nuget:?package=ArowSoftware.AuthClient&version=1.0.0
                    
Install as a Cake Tool

ArowSoftware.AuthClient

Official .NET 8 SDK for integrating ArowAuth into your .NET backends.

NuGet GitLab CI

Installation

dotnet add package ArowSoftware.AuthClient

Quick Start

In your Program.cs:

builder.Services.AddArowAuth(options =>
{
    options.Issuer = "https://sso.arowsoftware.co.uk";
    options.Audience = "my-app";
});

app.UseAuthentication();
app.UseAuthorization();
app.UseArowAuth();

Configuration

Option Required Description
Issuer Yes ArowAuth issuer URL (e.g. https://sso.arowsoftware.co.uk)
Audience Yes Your application's audience identifier
BaseUrl No ArowAuth API base URL if different from Issuer

Using IArowAuthService

Inject IArowAuthService anywhere in your application:

public class MyController : ControllerBase
{
    private readonly IArowAuthService _authService;

    public MyController(IArowAuthService authService)
    {
        _authService = authService;
    }

    [HttpGet("me")]
    [Authorize]
    public async Task<IActionResult> GetMe()
    {
        var token = HttpContext.Request.Headers["Authorization"]
            .ToString().Replace("Bearer ", "");

        var user = await _authService.GetUserAsync(token);
        return user is null ? Unauthorized() : Ok(user);
    }

    [HttpPost("refresh")]
    public async Task<IActionResult> Refresh([FromBody] string refreshToken)
    {
        var tokenResponse = await _authService.RefreshTokenAsync(refreshToken);
        return tokenResponse is null ? Unauthorized() : Ok(tokenResponse);
    }

    [HttpPost("introspect")]
    public async Task<IActionResult> Introspect([FromBody] string token)
    {
        var result = await _authService.IntrospectTokenAsync(token);
        return Ok(result);
    }
}

Validating Tokens Directly

var principal = await _authService.ValidateTokenAsync(token);
if (principal is null)
{
    // Token is invalid or expired
}

Documentation

Full ArowAuth documentation: https://sso.arowsoftware.co.uk/docs

License

MIT

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  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.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.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
1.0.0 113 3/24/2026