StsGateway is a OAuth2 STS(Security Token Service) client.
$ dotnet add package StsGatewayStsGateway is a OAuth2 STS(Security Token Service) client
| Package | Version | Downloads |
|---|---|---|
STS Gateway |
.NET Standard 2.1
You can check supported frameworks here:
https://learn.microsoft.com/pt-br/dotnet/standard/net-standard?tabs=net-standard-2-1
This package is available through Nuget Packages: https://www.nuget.org/packages/StsGateway
Nuget
Install-Package StsGateway
.NET CLI
dotnet add package StsGateway
services.AddStsGateway(config =>
{
config.ClientId = "YOUR ClIENT ID";
config.ClientSecret = "YOUR CLIENT SECRET";
config.GrantType = "GRANT TYPE EX: client_credentials";
config.RequestUri = new Uri(https://you_url);
});
services.AddMemoryCache();
services.AddStsGateway(config =>
{
config.ClientId = "YOUR ClIENT ID";
config.ClientSecret = "YOUR CLIENT SECRET";
config.GrantType = "GRANT TYPE EX: client_credentials";
config.RequestUri = new Uri(https://you_url);
config.CacheType = StsGateway.StsGatewayOptions.CacheTypeEnum.MemoryCache;
});
var stsGateway = serviceProvider.GetService<IStsGateway>();
var accessToken = await stsGateway!.GetAccessTokenAsync();
public class Customer()
{
private readonly IStsGateway _stsGateway;
public Customer(IStsGateway stsGateway)
{
_stsGateway = stsGateway;
}
public void SaveCustomer()
{
var accessToken = _stsGateway.GetAccessTokenAsync();
_httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
_httpClient.PostAsync(........);
}
}