BizDoc.Authentication.Okta
6.8.3
See the version list below for details.
dotnet add package BizDoc.Authentication.Okta --version 6.8.3
NuGet\Install-Package BizDoc.Authentication.Okta -Version 6.8.3
<PackageReference Include="BizDoc.Authentication.Okta" Version="6.8.3" />
paket add BizDoc.Authentication.Okta --version 6.8.3
#r "nuget: BizDoc.Authentication.Okta, 6.8.3"
// Install BizDoc.Authentication.Okta as a Cake Addin #addin nuget:?package=BizDoc.Authentication.Okta&version=6.8.3 // Install BizDoc.Authentication.Okta as a Cake Tool #tool nuget:?package=BizDoc.Authentication.Okta&version=6.8.3
Okta for BizDoc
BizDoc supports Okta for both authentication and authorization, in one of two configurations: server flow or client flow.
Server flow redirects unauthorized users to Okta sign-in page on Okta domain, and handles the redirect. Client flow prompts unauthorized users for credentials in an hosted widget, and negotiate with Okta on the background.
- For both modes, install BizDoc Nuget package:
dotnet add package BizDoc.Core.Okta
- Add Okta application. If using server mode, choose Web Application. If using client mode, choose ODIC - OpenID Connect, and select SPA.
Okta sign-in redirect url should match "/authorization-code/callback" on server mode, and no path for client mode.
Create an API Token to allow BizDoc to retrieve users information.
- In startup.cs, add Okta service.
For server flow, use AddOktaRedirect:
AddBizDoc(o=> {
o.ApplicationUri = "https://app-domain";
})
.AddOktaServer(o=> {
o.ApiToken = "api-token";
o.Domain = "domain-name";
o.ClientId = "client-id";
o.ClientSecret = "client-secret";
});
...
UseBizDoc().
.UseOktaServer();
For client mode, use AddOkta:
AddBizDoc(...)
.AddOkta(o=> {
o.ApiToken = "api-token";
o.Domain = "domain-name";
}).
UseIdentityProvider();
The UseIdentityProvider() method registers an identity provider which retrieve user information from Okta. To use a different provider, while still authenticating via Okta, see Implementing Identity Provider.
- Client mode only, install Angular package:
npm i @bizdoc/okta
Add Okta configuration in Angular app.module:
OktaModule.forRoot({
domain: 'domain-name',
clientId: 'client-id'
})
Roles
In order to map user groups to BizDoc roles for authorization purposes, add a new claim to Okta Authorization Server with the following specifications.
Property | Value |
---|---|
Name | bizdoc.roles |
Include in token type | ID Token |
Value type | Groups |
Filter | Matches regex, .* |
Include in | Any scope |
System
Add an attribute to either application profile or all profiles and set its type to boolean. Add a claim in API server that map to the profile attribute you created.
Property | Value |
---|---|
Name | bizdoc.admin |
Include in token type | ID Token |
Value type | Expression |
Value | user.{attr-name-here} |
Widgets
Staff Performance, current user is manager.
Staff Pending, current user is manager.
Groups Performance, selected groups, or current user groups.
Attributes
Implicit user attributes for analysis axes.
Name | Usage |
---|---|
CostCenter | |
Department | |
Division | |
Organization |
A type must be set for attributes in Architecture tool to enable the analysis to map to an axis.
Rules
User attribues available within rule expression.
Name | Usage |
---|---|
CostCenter | |
Department | |
Division | |
Organization |
Product | Versions 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. |
-
net6.0
- Microsoft.AspNetCore.Authentication.Cookies (>= 2.2.0)
- Microsoft.AspNetCore.Authentication.JwtBearer (>= 6.0.7)
- Microsoft.AspNetCore.Authentication.OpenIdConnect (>= 6.0.7)
- Okta.Sdk (>= 5.6.1)
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 |
---|---|---|
8.9.6 | 93 | 12/15/2024 |
8.9.5 | 80 | 12/2/2024 |
8.9.4 | 88 | 11/20/2024 |
8.9.3 | 93 | 10/13/2024 |
8.9.2 | 86 | 10/8/2024 |
8.8.1 | 127 | 9/17/2024 |
8.8.0 | 104 | 8/28/2024 |
8.7.0 | 72 | 7/29/2024 |
8.6.0 | 105 | 7/10/2024 |
8.5.15 | 119 | 5/28/2024 |
8.5.14 | 95 | 5/14/2024 |
8.5.13 | 119 | 4/23/2024 |
8.4.13 | 125 | 2/22/2024 |
8.4.12 | 115 | 2/20/2024 |
8.4.11 | 130 | 2/7/2024 |
8.4.10 | 117 | 2/2/2024 |
8.4.9 | 128 | 1/18/2024 |
8.4.8 | 125 | 1/12/2024 |
7.4.8 | 145 | 1/1/2024 |
7.4.7 | 141 | 1/1/2024 |
7.4.6 | 134 | 1/1/2024 |
7.4.5 | 174 | 12/31/2023 |
7.4.4 | 181 | 11/26/2023 |
7.4.3 | 147 | 11/22/2023 |
7.4.2 | 137 | 11/22/2023 |
7.3.2 | 152 | 8/14/2023 |
7.2.2 | 189 | 6/24/2023 |
7.1.2 | 169 | 6/2/2023 |
7.1.1 | 160 | 5/11/2023 |
7.1.0 | 161 | 5/4/2023 |
7.0.2 | 206 | 4/11/2023 |
7.0.1 | 231 | 3/30/2023 |
7.0.0 | 319 | 11/28/2022 |
6.8.11 | 339 | 11/8/2022 |
6.8.10 | 351 | 11/6/2022 |
6.8.8 | 363 | 10/31/2022 |
6.8.7 | 362 | 10/28/2022 |
6.8.6 | 374 | 10/27/2022 |
6.8.5 | 371 | 10/27/2022 |
6.8.4 | 403 | 10/24/2022 |
6.8.3 | 436 | 10/20/2022 |
6.8.2 | 419 | 10/20/2022 |