Skip to content
This repository has been archived by the owner on Feb 15, 2024. It is now read-only.
/ go-ezproxy Public archive

Go library and tooling for working with EZproxy (not related to or endorsed by OCLC)

License

Notifications You must be signed in to change notification settings

atc0005/go-ezproxy

Repository files navigation

go-ezproxy

Go library and tooling for working with EZproxy.

Latest Release Go Reference go.mod Go version Lint and Build Project Analysis

Table of contents

Project home

See our GitHub repo for the latest code, to file an issue or submit improvements for review and potential inclusion into the project.

Status

Alpha; very much getting a feel for how the project will be structured long-term and what functionality will be offered.

The existing functionality was added specifically to support the in-development atc0005/brick. This library is subject to change in order to better support that project.

Overview

This library is intended to provide common EZproxy-related functionality such as reporting or terminating active login sessions (either for all usernames or specific usernames), filtering (or not) audit file entries or traffic patterns (not implemented yet) for specific usernames or domains.

See the Input file formats doc for additional details regarding known and supported input file formats.

Just to be perfectly clear:

  • this library is intended to supplement the provided functionality of the official OCLC-developed/supported EZproxy application, not in any way replace it.
  • this library is not in any way associated with OCLC, EZproxy or other services offered by OCLC.

Features

Current

  • generate a list of audit records for session-related events

    • for all usernames
    • for a specific username
  • generate a list of active sessions using the audit log

    • using entires without a corresponding logout event type
  • generate a list of active sessions using the active file

    • for all usernames
    • for a specific username
  • terminate user sessions

    • single user session
    • bulk user sessions

Missing

  • Anything to do with traffic log entries
  • Examples

Changelog

See the CHANGELOG.md file for the changes associated with each release of this application. Changes that have been merged to master, but not yet an official release may also be noted in the file under the Unreleased section. A helpful link to the Git commit history since the last official release is also provided for further review.

Documentation

Please see:

If something doesn't make sense, please file an issue and note what is (or was) unclear.

Examples

Please see our GoDoc coverage for general usage and the examples doc for a list of applications developed using this module.

License

Taken directly from the LICENSE and NOTICE.txt files:

Copyright 2020-Present Adam Chalkley

https://github.com/atc0005/go-ezproxy/blob/master/LICENSE

Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed
under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
CONDITIONS OF ANY KIND, either express or implied. See the License for the
specific language governing permissions and limitations under the License.

References

Related projects

Official EZproxy docs