README.md 3.12 KB
Newer Older
Simon Schürg's avatar
Simon Schürg committed
1
2
# actl - Access Control

Simon Schürg's avatar
Simon Schürg committed
3
[![Golang](https://img.shields.io/badge/Go-1.15-blue.svg)](https://golang.org)
Simon Schürg's avatar
Simon Schürg committed
4
5
6
7
8
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Go Report Card](https://goreportcard.com/badge/git.schuerg.net/simon/actl)](https://goreportcard.com/report/git.schuerg.net/simon/actl)
[![pipeline status](https://git.schuerg.net/simon/actl/badges/master/pipeline.svg)](https://git.schuerg.net/simon/actl/-/commits/master)
[![coverage report](https://git.schuerg.net/simon/actl/badges/master/coverage.svg)](https://git.schuerg.net/simon/actl/-/commits/master)

Simon Schürg's avatar
Simon Schürg committed
9
10
> *A CLI tool for OAuth and OpenID Connect based access control.*

11
12
*Aims to become a swiss army knife for Open ID Connect on the command line.*

Simon Schürg's avatar
Simon Schürg committed
13
14
## Install

15
16
17
The actl releases can be found at <https://git.schuerg.net/simon/actl/-/releases>.
There are different options to install a release of actl:

18
1. Using a pre build `deb`, `rpm` or `apk` package for Debian, Ubuntu, Fedora, CentOS, RHEL, Alpine and others. This is the recommended option for users of a supported linux distribution because it does not only install the actl binary but also man pages and shell autocompletion scripts in a sane way.
19
20
21
22
23
24
25
2. Grab a pre compiled binary for your system architecture from the releases page and install it yourself. Copy the `actl` binary to `~/.local/bin/actl` and give it executable permission with `chmod +x ~/.local/bin/actl`.
3. Compile it from source:  
   - `git clone ssh://git@git.schuerg.net:2222/simon/actl.git`
   - `go install`
   - make sure `$GOPATH` is set and `$GOPATH/bin` (usally `~/go/bin`) is present in your `$PATH`
4. Foolproof `curl [url] | sudo bash` variant: *to be done*

Simon Schürg's avatar
Simon Schürg committed
26

Simon Schürg's avatar
Simon Schürg committed
27
28
29
30
## Usage

See: `actl help`

Simon Schürg's avatar
Simon Schürg committed
31
32
```
actl - Access Control
Simon Schürg's avatar
Simon Schürg committed
33
A CLI tool for OAuth 2.0 and OpenID Connect based access control.
Simon Schürg's avatar
Simon Schürg committed
34
35
36
37
38

Usage:
  actl [command]

Available Commands:
Simon Schürg's avatar
Simon Schürg committed
39
40
41
42
43
44
45
  certs       Fetch and print OIDC issuer public keys as JWKS and PEM.
  completion  Generate actl shell completion for bash, zsh, fish and powershell.
  decode      Decode a JWT and print it to stdout.
  decrypt     Decrypt a JWE cipher and print the plaintext payload.
  discover    Discover OpenID Connect provider configurations.
  docs        Generate the actl documentation as .man, .md, .rst or .yaml.
  encrypt     Encrypt a JSON payload as a JWE (JSON Web Encryption) cipher.
Simon Schürg's avatar
Simon Schürg committed
46
  help        Help about any command
Simon Schürg's avatar
Simon Schürg committed
47
48
  keygen      Generate keys for JSON Object Signing and Encryption (JOSE).
  login       Perform an OpenID Connect Auth Flow and retrieve a JWT token set.
Simon Schürg's avatar
Simon Schürg committed
49
  logout      Perform an OpenID Connect Logout
Simon Schürg's avatar
Simon Schürg committed
50
51
52
  sign        Sign a JSON payload as a JWS (JSON Web Signature).
  status      Print state information.
  userinfo    Fetch the OpenID Connect userinfo endpoint and print it to stdout
Simon Schürg's avatar
Simon Schürg committed
53
  verify      Verifies the signature of a JWT.
Simon Schürg's avatar
Simon Schürg committed
54
  version     Print the version number of actl.
Simon Schürg's avatar
Simon Schürg committed
55
56

Flags:
Simon Schürg's avatar
Simon Schürg committed
57
      --config string   config file (default is ${HOME}/.config/actl.toml)
Simon Schürg's avatar
Simon Schürg committed
58
  -h, --help            help for actl
Simon Schürg's avatar
Simon Schürg committed
59
  -v, --verbose         verbose output
Simon Schürg's avatar
Simon Schürg committed
60
61
62
63

Use "actl [command] --help" for more information about a command.
```

Simon Schürg's avatar
Simon Schürg committed
64
65
66
## LICENSE

This software is [MIT licensed by Simon Schürg](./LICENSE).