Application Identity Provider

IApplicationIdentityProviderService in assembly SanteDB.Core.Api version 3.0.1980.0

Summary

Represents a service which retrieves IApplicationIdentity and can authenticate to an IPrincipal for applications.

Description

In SanteDB, a security session is comprised of up to three security identities/principals:

  • (Optional) User identity representing the human using the application

  • (Optional) Device identity representing the device running the application, and

  • An IApplicationIdentity representing the application

This service is what is used to authenticate the application identity from a central credential store of registered applications.

See: SanteDB authentication architecture

Events

Event
Type
Description

Authenticated

EventHandler<AuthenticatedEventArgs>

Fired after an authentication request has been made.

Authenticating

EventHandler<AuthenticatingEventArgs>

Fired prior to an authentication request being made.

Operations

Operation
Response/Return
Input/Parameter
Description

Authenticate

IPrincipal

String applicationName String applicationSecret

Authenticate the application identity.

Authenticate

IPrincipal

String applicationName IPrincipal authenticationContext

Authenticate the application identity.

CreateIdentity

IApplicationIdentity

String applicationName String password IPrincipal principal Nullable<Guid> withSid

Create a basic identity in the provider

GetIdentity

IApplicationIdentity

String applicationName

Gets the specified identity for an application.

GetIdentity

IApplicationIdentity

Guid sid

Gets the specified identity for an application.

GetSid

Guid

String name

Gets the SID for the specified identity

SetLockout

void

String applicationName Boolean lockoutState IPrincipal principal

Set the lockout status

ChangeSecret

void

String applicationName String secret IPrincipal principal

Change the specified application identity's secret

AddClaim

void

String applicationName IClaim claim IPrincipal principal Nullable<TimeSpan> expiry

Add a to

GetClaims

IEnumerable<IClaim>

String applicationName

Get all active claims for the specified application

RemoveClaim

void

String applicationName String claimType IPrincipal principal

Removes a claim from the specified device account

Implementations

BridgedApplicationIdentityProvider - (SanteDB.Client)

Application identity provider service that bridges between local and upstream

Service Registration

UpstreamApplicationIdentityProvider - (SanteDB.Client)

Represents an implementation of a IApplicationIdentityProviderService which uses OAUTH

Service Registration

AdoApplicationIdentityProvider - (SanteDB.Persistence.Data)

Application identity provider that uses the database to authenticate applications

Service Registration

Example Implementation

References

Last updated

Was this helpful?