Class Reference
IRIS for UNIX 2019.2
InterSystems: The power behind what matters   
Documentation  Search
  [%SYS] >  [%SYS] >  [OAuth2] >  [Request]
Private  Storage   

persistent class %SYS.OAuth2.Request extends %Persistent

%SYS.OAuth2.Request creates and manages the request JWT needed to support the request and request_uri parameters that are defined in section 6 of OpenID Connect Core document.

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
5 8 1


Summary

Properties
ApplicationName JWT RequestName State
UpdateTime

Methods
%AddToSaveSet %AddToSyncSet %BMEBuilt %CheckConstraints
%CheckConstraintsForExtent %ClassIsLatestVersion %ClassName %ComposeOid
%ConstructClone %Delete %DeleteExtent %DeleteId
%DispatchClassMethod %DispatchGetModified %DispatchGetProperty %DispatchMethod
%DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty %Exists
%ExistsId %Extends %GUID %GUIDSet
%GetLock %GetParameter %GetSwizzleObject %Id
%InsertBatch %IsA %IsModified %IsNull
%KillExtent %KillExtentData %LoadFromMemory %LockExtent
%LockId %New %NormalizeObject %ObjectIsNull
%ObjectModified %Oid %OnBeforeAddToSync %OnDetermineClass
%Open %OpenId %OriginalNamespace %PackageName
%PhysicalAddress %PurgeIndices %Reload %RemoveFromSaveSet
%ResolveConcurrencyConflict %RollBack %Save %SaveDirect
%SaveIndices %SerializeObject %SetModified %SortBegin
%SortEnd %SyncObjectIn %SyncTransport %UnlockExtent
%UnlockId %ValidateIndices %ValidateObject CleanupRequestObjects
DeleteRequestObject GetJWT GetURL MakeRequestJWT
OpenRequestObject UpdateRequestObject


Properties

• property ApplicationName as %String(MAXLEN=64) [ Required ];
The name of the client application associated with this request.
• property JWT as %String(MAXLEN=16384);
The JWT created from the request object.
• property RequestName as %String [ Required ];
The name of this request object.
• property State as %String(MAXLEN=1024);
The base64 encoded random state associated with the request. The state is included as a fragment of in the URL in order to ensure cached requests are retrieved.
• property UpdateTime as %Integer;
The time when the request object was last updated.

Methods

• classmethod CleanupRequestObjects(applicationName As %String, interval As %Integer) as %Status
Clean up the request object list by deleting any request object that has not been updated for the specified client in interval seconds
• classmethod DeleteRequestObject(applicationName As %String, requestName As %String) as %Status
Delete the request object that is specified by applicationName and requestName.
• method GetJWT() as %String
Get the JWT associated with this request object
• method GetURL(Output sc As %Status) as %String
Get the URL associated with this persistent request object.
• classmethod MakeRequestJWT(applicationName As %String, ByRef properties As %String, Output sc As %Status) as %String
Create and return a JWT based on the specified properties.
The JWT may be signed or encoded by the client configuration that is specified by applicationName.
To add a request parameter which is a JSON object, you must create a properties element which is a %DynamicObject. For example the claims parameter that is defined by OpenID Connect.
• classmethod OpenRequestObject(applicationName As %String, requestName As %String, Output sc As %Status) as %SYS.OAuth2.Request
Open a persistent %SYS.OAuth2.Request object which contains a JWT identified by applicationName and requestName.
• classmethod UpdateRequestObject(applicationName As %String, requestName As %String, ByRef properties As %String, Output sc As %Status) as %SYS.OAuth2.Request
Create or update a persistent %SYS.OAuth2.Request object which contains a JWT based on the specified properties. The new request object is both saved and returned by this method.
The JWT may be signed or encoded by the client configuration that is specified by applicationName.
To add a request parameter which is a JSON object, you must create a properties element which is a %DynamicObject. For example the claims parameter that is defined by OpenID Connect.

Indices

•index (RequestIndex on ApplicationName,RequestName) [IdKey,Unique];
The IDKEY for the request object class.


Copyright (c) 2019 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.