csas-authorize

csas-authorize 0.2.1.67~trixie

 pool/main/c/csas-authorize/csas-authorize_0.2.1.67~trixie_all.deb csas-authorize
CSas/Erste Access Token obtainer
Filename pool/main/c/csas-authorize/csas-authorize_0.2.1.67~trixie_all.deb
Version0.2.1.67~trixie
Age in days311
Release date2025 12. 29.
Size54.01 KB
id4121
Namecsas-authorize
Package
Appname
Essential
Vendor
License
Distributiontrixie
Suitemain
Source
Architecturebinary-arm64
MultiArch
MaintainerVítězslav Dvořák
InstalledSize234
Dependsdebconf (>= 0.5) , debconf-2.0 , composer-debian , php-intl , php-vitexsoftware-ease-bootstrap5 , php-vitexsoftware-ease-html-widgets (>= 1.1.1) , php-vitexsoftware-ease-bootstrap5-widgets , php-vitexsoftware-ease-fluentpdo , php-spojenet-csas-accountsapi , php-robmorgan-phinx , php-cakephp-phinx , csas-authorize-sqlite , csas-authorize-mysql
PreDepends
Breaks
Enhances
Sectionweb
Priorityoptional
DescriptionCSas/Erste Access Token obtainer
LongDescriptionManage Renew/Access tokens for your Erste/Csas Apps
AutoBuiltPackage
Filenamepool/main/c/csas-authorize/csas-authorize_0.2.1.67~trixie_all.deb
MD5suma9f31927ddcee04c3eaf88eb506559e0
SHA11e90877a6f817ee3413fa2e7b000dc5a52926a3e
SHA256e47f17d50cbcd7b6d4275b45dbc1dc53cadd9002cec005fc08e590871cf9b195
SHA512d96d88f0683f732a7e62d664d11f45ac29885205dbf79d63ce5dc757a44aead9362bc4fe02185a5269e4c84b7606e29e0f8e37f3ec846e6abf8888f27870f55e
Size55308
Auto-Built-Package
Homepagehttps://github.com/Spoje-NET/csas-authorize
Provides
Existing
fileMtime2025-12-29 01:46:57
created2025-08-26 22:26:21
updated2025-12-29 01:46:57
csas-authorize
<>

CSAS Authorize

CSAS Auhorize Logo GitHub License: MIT Packaging: deb

This application provides a simple way to authorize your application with CSAS API.

Installation

sudo apt install lsb-release wget apt-transport-https bzip2


wget -qO- https://repo.vitexsoftware.com/keyring.gpg | sudo tee /etc/apt/trusted.gpg.d/vitexsoftware.gpg
echo "deb [signed-by=/etc/apt/trusted.gpg.d/vitexsoftware.gpg]  https://repo.vitexsoftware.com  $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/vitexsoftware.list
sudo apt update

sudo apt install csas-authorize

Usage

  1. Register your application at CSAS Developer Portal
  2. Create new application and get your client_id and client_secret
  3. Open in browser csas-authorize and fill in your client_id and client_secret
  4. Open your browser and authorize your application

'Apps' Main screen with list of your applications registered at CSAS Developer Portal

App One application can have multiple tokens

'Token' Once is token created you can see it's details. Each Refresh Token can have multiple Access Tokens. Refresh token is valid for 180 days and Access Token for 5 minutes.

Mail configuration

Authorization links ("Mail Auth Link" button) and token renewal reminders are sent by Symfony Mailer. Configure it in /etc/csas-authorize/csas-authorize.env:

MAIL_DSN="smtp://username:password@mail.example.com:587"
MAIL_FROM=noreply@example.com
  • MAIL_DSN – transport in Symfony mailer DSN format. STARTTLS is used when the server offers it, special characters in username/password must be URL encoded (@ → %40). Without it the local sendmail is used.
  • MAIL_FROM – sender address (EMAIL_FROM is also accepted), defaults to user@hostname.
  • EASE_SMTP – deprecated JSON configuration, still used when MAIL_DSN is not set.

Command line usage

Usage: csas-access-token [options]

Token Operations:
  --tokenId, -t <ID>   The token ID (required for token operations)
  --output, -o <FILE>  The output file (optional)
  --environment, -e    The environment file with DB_* fields (optional)
  --list, -l           List available tokens
  --json, -j           Export token data in JSON format
  --accesTokenKey, -a  Specify custom Access Token key instead of CSAS_ACCESS_TOKEN
  --sandboxModeKey, -s Specify custom SandBox Mode key instead of CSAS_SANDBOX_MODE

Application Operations:
  --export, -x <ID>    Export application data in Developer Portal format
  --import, -i <JSON>  Import application data from JSON string
  --file <FILE>        Import application data from JSON file
  --example            Show example JSON format for import

General:
  --help, -h           Show help message

Examples:
  # Token operations
  csas-access-token -t 71004963-e3d4-471f-96fc-1aef79d17ec1 -o .env
  csas-access-token --list --json

  # Application export/import
  csas-access-token --export=1 --output=backup.json
  csas-access-token --file=backup.json
  csas-access-token --import='{"name":"Test", "id":"uuid", ...}'
  csas-access-token --example

If there is no output file specified, the access token is printed to the standard output. Use the --json option to export token data or the token list in JSON format.

Development

We use two SQL tables to store data. For production we use MariaDB and for development we use SQLite.

Table application

+--------------------------+------------------+------+-----+---------------------+-------------------------------+
| Field                    | Type             | Null | Key | Default             | Extra                         |
+--------------------------+------------------+------+-----+---------------------+-------------------------------+
| id                       | int(11) unsigned | NO   | PRI | NULL                | auto_increment                |
| uuid                     | char(36)         | YES  |     | NULL                |                               |
| name                     | varchar(255)     | YES  |     | NULL                |                               |
| logo                     | varchar(255)     | YES  |     | NULL                |                               |
| sandbox_client_id        | char(36)         | YES  |     | NULL                |                               |
| sandbox_client_secret    | varchar(255)     | YES  |     | NULL                |                               |
| sandbox_redirect_uri     | varchar(255)     | YES  |     | NULL                |                               |
| sandbox_api_key          | char(36)         | YES  |     | NULL                |                               |
| production_client_id     | char(36)         | YES  |     | NULL                |                               |
| production_client_secret | varchar(255)     | YES  |     | NULL                |                               |
| production_redirect_uri  | varchar(255)     | YES  |     | NULL                |                               |
| production_api_key       | char(36)         | YES  |     | NULL                |                               |
| created_at               | timestamp        | YES  |     | current_timestamp() |                               |
| updated_at               | timestamp        | YES  |     | current_timestamp() | on update current_timestamp() |
+--------------------------+------------------+------+-----+---------------------+-------------------------------+

Table token

+----------------+------------------------------+------+-----+---------------------+-------------------------------+
| Field          | Type                         | Null | Key | Default             | Extra                         |
+----------------+------------------------------+------+-----+---------------------+-------------------------------+
| id             | int(11) unsigned             | NO   | PRI | NULL                | auto_increment                |
| application_id | int(11)                      | NO   |     | NULL                |                               |
| environment    | enum('sandbox','production') | YES  |     | NULL                |                               |
| access_token   | varchar(550)                 | YES  |     | NULL                |                               |
| refresh_token  | varchar(550)                 | YES  |     | NULL                |                               |
| expires_in     | int(11)                      | YES  |     | NULL                |                               |
| scope          | varchar(255)                 | YES  |     | NULL                |                               |
| created_at     | timestamp                    | YES  |     | current_timestamp() |                               |
| updated_at     | timestamp                    | YES  |     | current_timestamp() | on update current_timestamp() |
| uuid           | char(36)                     | YES  |     | NULL                |                               |
+----------------+------------------------------+------+-----+---------------------+-------------------------------+

Data Import/Export with Developer Portal

CSAS Authorize supports bidirectional data flow with CSAS Developer Portal format for easy migration and backup.

Import from Developer Portal

Web Interface

  1. Navigate to the main page and click "Import from Developer Portal"
  2. Upload a JSON file or paste JSON data directly
  3. The application will be automatically imported and saved

Command Line

# Import from JSON file
csas-access-token --file ./example-import.json

# Import from JSON string  
csas-access-token --import '{"name":"My App", "id":"uuid", ...}'

# Show example JSON format
csas-access-token --example

Export to Developer Portal Format

Command Line

# Export application by ID to stdout
php libexec/csas-access-token.php --export=1

# Export application by UUID to file
php libexec/csas-access-token.php --export=71004963-e3d4-471f-96fc-1aef79d17ec1 --output=backup.json

# Short form using -x option
php libexec/csas-access-token.php -x 1 -o export.json

JSON Format

The import/export system uses a standardized JSON format compatible with Developer Portal data:

{
  "name": "Application Name",
  "id": "application-uuid-from-portal",
  "logoUrl": "https://example.com/logo.png",
  "email": "developer@example.com",
  "sandbox": {
    "clientId": "sandbox-client-uuid",
    "clientSecret": "sandbox-client-secret",
    "apiKey": "sandbox-api-key-uuid",
    "redirectUri": "https://myapp.example.com/sandbox/callback"
  },
  "production": {
    "clientId": "production-client-uuid", 
    "clientSecret": "production-client-secret",
    "apiKey": "production-api-key-uuid",
    "redirectUri": "https://myapp.example.com/production/callback"
  }
}

Bidirectional Workflow

# Export from one instance
csas-access-token --export=1 --output=backup.json

# Import to another instance (or same instance)
csas-access-token --file backup.json

For detailed documentation: