OidcAgentClient Class
Beta
Utility to generate OIDC/OAuth tokens for agent or service applications
- The application must register a client using the [self service registration page]{@link https://imodeljs.github.io/iModelJs-docs-output/getting-started/registration-dashboard/}.
 - The client type must be "Agent"
 - Use the Client Id/Client Secret/Scopes to create the agent configuration that's passed in.
 - Ensure the application can access the Connect Project/Asset - in production environments, this is done by using the connect project portal to add add the email {Client Id}@apps.imsoidc.bentley.com as an authorized user with the appropriate role that includes the required access permissions.
 
Extends
Implements
Methods
| Name | Description | |
|---|---|---|
| constructor(agentConfiguration: OidcAgentClientConfiguration): OidcAgentClient | ||
| getAccessToken(requestContext?: ClientRequestContext): Promise<AccessToken> | Returns a promise that resolves to the AccessToken of the currently authorized client. | |
| getToken(requestContext: ClientRequestContext): Promise<AccessToken> | Get the access token | Deprecated   | 
| refreshToken(requestContext: ClientRequestContext, jwt: AccessToken): Promise<AccessToken> | Refresh the access token - simply checks if the token is still valid before re-fetching a new access token | Deprecated   | 
Inherited methods
| Name | Inherited from | Description | 
|---|---|---|
| createToken(tokenSet: TokenSet, userInfo?: UserInfo): AccessToken Protected | OidcBackendClient | |
| delete(requestContext: AuthorizedClientRequestContext, relativeUrlPath: string): Promise<void> Protected | Client | used by clients to send delete requests | 
| discoverEndpoints(requestContext: ClientRequestContext): Promise<Issuer> | OidcBackendClient | Discover the endpoints of the service | 
| getClient(requestContext: ClientRequestContext): Promise<OpenIdClient> Protected | OidcBackendClient | |
| getUrl(requestContext: ClientRequestContext): Promise<string> | Client | Gets the URL of the service. | 
| getUrlSearchKey(): string Protected | OidcClient | Gets name/key to query the service URLs from the URL Discovery Service ("Buddi") | 
| setupOptionDefaults(options: RequestOptions): Promise<void> Protected | Client | Augments request options with defaults returned by the DefaultRequestOptionsProvider. | 
| parseUserInfo(jwt: string): UserInfo | undefined Static | OidcBackendClient | 
Properties
| Name | Type | Description | |
|---|---|---|---|
| hasExpired Accessor ReadOnly | boolean | Set to true if the user has signed in, but the token has expired and requires a refresh | |
| hasSignedIn Accessor ReadOnly | boolean | Set to true if signed in - the accessToken may be active or may have expired and require a refresh | |
| isAuthorized Accessor ReadOnly | boolean | Set to true if there's a current authorized user or client (in the case of agent applications). | 
Inherited properties
| Name | Type | Inherited from | Description | 
|---|---|---|---|
| _configuration Protected | OidcBackendClientConfiguration | OidcBackendClient | |
| _url Protected | undefined | string | Client | |
| searchKey Static | string | OidcClient | 
Defined in
Last Updated: 08 January, 2020