Namespace: OpenEdge.Security.Provider
Type: Interface IAuthProvider
Parent Classes:
Inherits: Progress.Lang.Object


File:IAuthProvider
Purpose:Defines an interface for interacting with an OE Authentication
Provider from an STS.
Author(s):pjudge
Created:Thu Feb 11 09:53:15 EST 2016
Notes:* Based on the Progress.Security.Realm.IHybridRealm interface



Method Summary
  Options Name Purpose
  CHARACTER GetAttribute (character, character) /* Retrieves a value for the a requested attribute, per user @param character A unique userid @param character The name of the attribute for which to return a value return character An attribute value for the given user. May be empty or unknown. */
  CHARACTER GetAttributeNames (character) /* Returns an array of attributes for a given user @param character A unique userid @return character[] An array of attribute names. */
  LOGICAL SetAttribute (character, character, character) /* Sets an attribute's value for a user. May optionally create an attribute value. @param character A unique userid @param character The name of the attribute to remove @param character The value to apply @return logical TRUE if the attribute value was successfully set; FALSE otherwise */
  LOGICAL ValidatePassword (character, character) /* Simple, clear-text password validation for a user @param character A unique userid @param character The user's (cleartext) password to verify @return logical TRUE if the provide credentials match the realm's values */
  LOGICAL ValidatePassword (character, character, character, character) /* Digest-encoded password validation for a user @param character A unique userid @param character The hashed digest of the password to verify @param character The nonce value used to create the digest hash @param character The timestamp value used to create the digest hash @return logical TRUE if the provide credentials match the realm's values */
  CHARACTER ValidateUser (character) /* Validates that the username is in the realm, and returns a unique identifier for the user (which may be the username@domain). @param character The client-supplied username @return character A unique identifier for the user */

Method Detail
Top

CHARACTER GetAttribute (character, character)

/* Retrieves a value for the a requested attribute, per user
return character An attribute value for the given user. May be empty or unknown.
Parameters:
pcUserId CHARACTER
 
pcAttributeName CHARACTER
 
Returns CHARACTER
 
Top

CHARACTER GetAttributeNames (character)

/* Returns an array of attributes for a given user
Parameters:
pcUserId CHARACTER
 
Returns CHARACTER
  character[] An array of attribute names.
Top

LOGICAL SetAttribute (character, character, character)

/* Sets an attribute's value for a user. May optionally create an attribute value.
Parameters:
pcUserId CHARACTER
 
pcAttributeName CHARACTER
 
pcAttributeValue CHARACTER
 
Returns LOGICAL
  logical TRUE if the attribute value was successfully set; FALSE otherwise
Top

LOGICAL ValidatePassword (character, character)

/* Simple, clear-text password validation for a user
Parameters:
pcUserId CHARACTER
 
pcPassword CHARACTER
 
Returns LOGICAL
  logical TRUE if the provide credentials match the realm's values
Top

LOGICAL ValidatePassword (character, character, character, character)

/* Digest-encoded password validation for a user
Parameters:
pcUserId CHARACTER
 
pcDigest CHARACTER
 
pcNonce CHARACTER
 
pcTimestamp CHARACTER
 
Returns LOGICAL
  logical TRUE if the provide credentials match the realm's values
Top

CHARACTER ValidateUser (character)

/* Validates that the username is in the realm, and returns a unique identifier for
the user (which may be the username@domain).
Parameters:
pcUserName CHARACTER
 
Returns CHARACTER
  character A unique identifier for the user