auth::password::create_contract (private)

 auth::password::create_contract

Defined in packages/acs-authentication/tcl/apm-callback-procs.tcl

Create service contract for password management.

Partial Call Graph (max 5 caller/called nodes):
%3 auth::package_install auth::package_install (private) auth::password::create_contract auth::password::create_contract auth::package_install->auth::password::create_contract acs_sc::contract::new_from_spec acs_sc::contract::new_from_spec (public) auth::password::create_contract->acs_sc::contract::new_from_spec auth::password::CanChangePassword auth::password::CanChangePassword (private) auth::password::create_contract->auth::password::CanChangePassword auth::password::CanResetPassword auth::password::CanResetPassword (private) auth::password::create_contract->auth::password::CanResetPassword auth::password::CanRetrievePassword auth::password::CanRetrievePassword (private) auth::password::create_contract->auth::password::CanRetrievePassword auth::password::ChangePassword auth::password::ChangePassword (private) auth::password::create_contract->auth::password::ChangePassword

Testcases:
No testcase defined.
Source code:
    set spec {
        name "auth_password"
        description "Update, reset, and retrieve passwords for authentication."
        operations {
            CanChangePassword {
                description {
                    Return whether the user can change his/her password through this implementation.
                    The value is not supposed to depend on the username and should be cacheable.
                }
                input {
                    parameters:string,multiple
                }
                output {
                    changeable_p:boolean
                }
                iscacheable_p "t"
            }
            ChangePassword {
                description {
                    Change the user's password. 
                }
                input {
                    username:string
                    old_password:string
                    new_password:string
                    parameters:string,multiple
            authority_id:integer
                }
                output {
                    password_status:string
                    password_message:string
                }
            }
            CanRetrievePassword {
                description {
                    Return whether the user can retrieve his/her password through this implementation.
                    The value is not supposed to depend on the username and should be cacheable.
                }
                input {
                    parameters:string,multiple
                }
                output {
                    retrievable_p:boolean
                }
                iscacheable_p "t"
            }
            RetrievePassword {
                description {
                    Retrieve the user's password. The implementation can either return the password, in which case
                    the authentication API will email the password to the user. Or it can email the password
                    itself, in which case it would return the empty string for password.
                }
                input {
                    username:string
                    parameters:string,multiple
                }
                output {
                    password_status:string
                    password_message:string
                    password:string
                }
            }
            CanResetPassword {
                description {
                    Return whether the user can reset his/her password through this implementation.
                    The value is not supposed to depend on the username and should be cacheable.
                }
                input {
                    parameters:string,multiple
                }
                output {
                    resettable_p:boolean
                }
                iscacheable_p "t"
            }
            ResetPassword {
                description {
                    Reset the user's password to a new, randomly generated value. 
                    The implementation can either return the password, in which case
                    the authentication API will email the password to the user. Or it can email the password
                    itself, in which case it would return the empty string.
                }
                input {
                    username:string
                    parameters:string,multiple
            authority_id:integer
                }
                output {
                    password_status:string
                    password_message:string
                    password:string
                }
            }
            GetParameters {
                description {
                    Get an arraay-list of the parameters required by this service contract implementation.
                }
                output {
                    parameters:string,multiple
                }
            }
        }
    }

    acs_sc::contract::new_from_spec -spec $spec
XQL Not present:
Generic, PostgreSQL, Oracle
[ hide source ] | [ make this the default ]
Show another procedure: