IRISLIB database
Authenticator Class Reference

Implement the Simple Authentication and Security Layer (SASL) as defined by RFC 2222. More...

Inheritance diagram for Authenticator:
Collaboration diagram for Authenticator:

Public Member Functions

_.Library.Boolean Next (_.Library.String challenge, _.Library.String response)
 Return next response based on challenge using the selected mechanism.
 
_.Library.Boolean Start (_.Library.String authlist, _.Library.String mechanismName, _.Library.String response)
 Find matching SASL mechanism from blank separated authlist and. More...
 
- Public Member Functions inherited from RegisteredObject
_.Library.Status OnAddToSaveSet (_.Library.Integer depth, _.Library.Integer insert, _.Library.Integer callcount)
 This callback method is invoked when the current object is added to the SaveSet,. More...
 
_.Library.Status OnClose ()
 This callback method is invoked by the <METHOD>Close</METHOD> method to. More...
 
_.Library.Status OnConstructClone (_.Library.RegisteredObject object, _.Library.Boolean deep, _.Library.String cloned)
 This callback method is invoked by the <METHOD>ConstructClone</METHOD> method to. More...
 
_.Library.Status OnNew ()
 This callback method is invoked by the <METHOD>New</METHOD> method to. More...
 
_.Library.Status OnValidateObject ()
 This callback method is invoked by the <METHOD>ValidateObject</METHOD> method to. More...
 

Public Attributes

 AccessToken
 An access token for use with OAuth. More...
 
 Mechanism
 The SASL mechanism selected for this authentication sequence. More...
 
 MechanismList
 An ordered, comma separated list of security mechanism names to be used for SASL. More...
 
 Password
 The password for the user name being authenticated. More...
 
 ServiceName
 The service name for the service being authenticated. More...
 
 UserName
 The user name being authenticated. More...
 

Private Member Functions

 __GetMechanisms (mechanismArray, classArray)
 Convert SASL mechanism list to an array where mechanismArray is the. More...
 

Additional Inherited Members

- Static Public Attributes inherited from RegisteredObject
 CAPTION = None
 Optional name used by the Form Wizard for a class when generating forms. More...
 
 JAVATYPE = None
 The Java type to be used when exported.
 
 PROPERTYVALIDATION = None
 This parameter controls the default validation behavior for the object. More...
 

Detailed Description

Implement the Simple Authentication and Security Layer (SASL) as defined by RFC 2222.

This class will pick a security mechanism (e.g. CRAM-MD5) from a list defined by the user of this class based on server options. The selected security mechanism will use its challenge-response mechanism to authenticate this client with the selected server. Currently no negotiation or support for a security layer is implemented.

#include occOptions #include occStatus

Member Function Documentation

◆ __GetMechanisms()

__GetMechanisms (   mechanismArray,
  classArray 
)
private

Convert SASL mechanism list to an array where mechanismArray is the.

number of mechanisms, mechanismArray(i) is the mechanism name and classArray(i) is the associated class name.

◆ Start()

_.Library.Boolean Start ( _.Library.String  authlist,
_.Library.String  mechanismName,
_.Library.String  response 
)

Find matching SASL mechanism from blank separated authlist and.

return mechanism name and optional initial response for this mechanism.

Member Data Documentation

◆ AccessToken

AccessToken

An access token for use with OAuth.

If an access token is supplied it is assumed that OAuth will be used instead of basic auth.  

◆ Mechanism

Mechanism

The SASL mechanism selected for this authentication sequence.

 

◆ MechanismList

MechanismList

An ordered, comma separated list of security mechanism names to be used for SASL.

authentication. Security mechanisms that are added to this list must inherit from Net.SASL.Base. The default class name for these mechanisms is Net.SASL.<mechanism name> where <mechanism name> is the name of a SASL mechanism with all characters except alphanumerics removed. The class name may be supplied explicitely in the format "&lt;mechanism name&gt;:&lt;class name&gt;". InterSystems IRIS-supplied mechanisms are in the package Net.SASL.  

◆ Password

Password

The password for the user name being authenticated.

 

◆ ServiceName

ServiceName

The service name for the service being authenticated.

For example, SMTP authentication uses the service name "smtp".  

◆ UserName

UserName

The user name being authenticated.

No authentication will be attempted unless UserName and Password are supplied.