API:EPrints/DataObj/LoginTicket

From EPrints Documentation
Jump to: navigation, search

EPrints 3 Reference: Directory Structure - Metadata Fields - Repository Configuration - XML Config Files - XML Export Format - EPrints data structure - Core API - Data Objects


API: Core API

Latest Source Code (3.4, 3.3) | Revision Log | Before editing this page please read Pod2Wiki


NAME

EPrints::DataObj::LoginTicket - User system login ticket.

User Comments


DESCRIPTION

Login tickets are the database entries for a user's session cookies.

User Comments


Configuration Settings

User Comments


user_cookie_timeout = undef

Set an expiry on the session cookies. This will cause the user's browser to delete the cookie after the given time. The time is specified according to CGI's cookie constructor. This allows settings like +1h and +7d.

User Comments


user_inactivity_timeout = 86400 * 7

How long to wait in seconds before logging the user out after their last activity.

User Comments


user_session_timeout = undef

How long in seconds the user can stay logged in before they must re-log in. Defaults to never - if you do specify this setting you probably want to reduce user_inactivity_timeout to <1 hour.

User Comments


CORE METADATA FIELDS

User Comments


code (id)

The identifier used in the HTTP cookie for this login ticket's session.

User Comments


securecode (id)

The identifier used in the HTTPS cookie for this login ticket's session.

User Comments


ip (id)

The IP address of associated with this login ticket.

User Comments


time (bigint)

The time in seconds since the start of epoch when this login ticket was created.

User Comments


expires (bigint)

The time in seconds since the start of epoch when this login ticket will expires.

User Comments


REFERENCES AND RELATED OBJECTS

User Comments


userid (itemref)

The ID of the user to whom this login ticket belongs.

User Comments


INSTANCE VARIABLES

See EPrints::DataObj.

User Comments


METHODS

User Comments


Class Methods

User Comments


get_system_field_info

$fields = EPrints::DataObj::Access->get_system_field_info

Returns an array describing the system metadata of the loginticket dataset.

User Comments


get_dataset_id

$dataset = EPrints::DataObj::LoginTicket->get_dataset_id

Returns the ID of the EPrints::DataSet object to which this record belongs.

User Comments


get_defaults

$defaults = EPrints::DataObj::LoginTicket->get_defaults( $session, $data, $dataset )

Returns default values for this data object based on the starting $data.

User Comments


new_from_request

$loginticket = EPrints::DataObj::LoginTicket->new_from_request( $repo, $r )

Creates a new loginticket data object using the HTTP::Request $r.

Returns new loginticket data object if successful. Otherwise, returns undef.

User Comments


expire_all

EPrints::DataObj::LoginTicket->expire_all( $repo )

Expire all login tickets. Effectively logging out all users currently logged in.

User Comments


session_key

EPrints::DataObj::LoginTicket->session_key( $repo )

Get the key to use for the session cookies.

In the following circumstance:

 example.org
 custom.example.org
 

Where both hosts use the same cookie key the cookie from example.org will collide with the cookie from custom.example.org. To avoid this the full hostname is embedded in the cookie key.

User Comments


secure_session_key

EPrints::DataObj::LoginTicket->secure_session_key($repo)

See session_key.

User Comments


Object Methods

User Comments


generate_cookie

$cookie = $loginticket->generate_cookie( %opts )

Returns the HTTP (non-secure) session cookie. Uses %opts to add any additional attributes to the cookie.

User Comments


generate_secure_cookie

$cookie = $ticket->generate_secure_cookie( %opts )

Returns the HTTPS session cookie. Uses %opts to add any additional attributes to the cookie.

User Comments


set_cookies

$ticket->set_cookies

Set the session cookies for this loginticket data object.

User Comments


update

$ticket->update

Update the loginticket data object by extending the expiry time.

The expiry time is extended user_inactivity_timeout or 7 days.

User Comments


SEE ALSO

EPrints::DataObj and EPrints::DataSet.

User Comments


COPYRIGHT

© Copyright 2023 University of Southampton.

EPrints 3.4 is supplied by EPrints Services.

http://www.eprints.org/eprints-3.4/

LICENSE

This file is part of EPrints 3.4 http://www.eprints.org/.

EPrints 3.4 and this file are released under the terms of the GNU Lesser General Public License version 3 as published by the Free Software Foundation unless otherwise stated.

EPrints 3.4 is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with EPrints 3.4. If not, see http://www.gnu.org/licenses/.

User Comments