réflexion sur l'emplacement du token à fixer #2

Closed
opened 2023-08-09 15:19:53 +02:00 by lseys · 2 comments
Owner

Toute commande emissary api agent est infructueuses si l'on est pas positionné dans le dossier contenant .emissary-token, qui ce trouve là ou il à été créé par l'utilisateur !

exemple de retour en étant dans un autre dossier.

emissary-serveur@emissaryserveur-VirtualBox:~/import-emissary$ emissary api agent query
[ERROR] api-error: unauthorized

En partant du principe que la modification de configuration uci des bornes peut ce faire depuis le serveur, il paraît opportun d'imaginer plusieurs dossier correspondant à des types de bornes (destinations, usage etc...) qui réponds à différentes configuration.

par exemple:

emissary-file/
├── .secret
│   ├── .token-emissary-prod 
│   └── .token-emissary-dev
├── bar
│   ├── uci-spec-client1.json
│   └── uci-spec-default.json
├── bar-beer
│   ├── uci-spec-amateur.json
│   ├── uci-spec-default.json
│   └── uci-spec-full.json
├── bar-gamer
│   └── uci-spec-default.json
└── brasserie
    ├── uci-spec-brasserie1.json
    ├── uci-spec-brasserie2.json
    ├── uci-spec-brasserie3.json
    └── uci-spec-default-brasserie.json

En partant de ce principe il serait plus cohérent de mon point de vue d'avoir un emplacement prévu pour le token, à partir du moment ou il est au bon endroit, toutes commandes emissary ira le chercher n'obligeant pas l'utilisateur à revenir à chaque fois dans son dossier.

Ou le cas échéant de pouvoir le préciser dans un fichier de conf.
/etc/emissary/server.yml est peut-être trop évident ? (sécurité ?)

Ou comme dans l'exemple dans un .secret/ ?

Toute commande `emissary api agent` est infructueuses si l'on est pas positionné dans le dossier contenant `.emissary-token`, qui ce trouve là ou il à été créé par l'utilisateur ! exemple de retour en étant dans un autre dossier. ```Shell emissary-serveur@emissaryserveur-VirtualBox:~/import-emissary$ emissary api agent query [ERROR] api-error: unauthorized ``` En partant du principe que la modification de configuration uci des bornes peut ce faire depuis le serveur, il paraît opportun d'imaginer plusieurs dossier correspondant à des types de bornes (destinations, usage etc...) qui réponds à différentes configuration. par exemple: ```Shell emissary-file/ ├── .secret │   ├── .token-emissary-prod │   └── .token-emissary-dev ├── bar │   ├── uci-spec-client1.json │   └── uci-spec-default.json ├── bar-beer │   ├── uci-spec-amateur.json │   ├── uci-spec-default.json │   └── uci-spec-full.json ├── bar-gamer │   └── uci-spec-default.json └── brasserie ├── uci-spec-brasserie1.json ├── uci-spec-brasserie2.json ├── uci-spec-brasserie3.json └── uci-spec-default-brasserie.json ``` En partant de ce principe il serait plus cohérent de mon point de vue d'avoir un emplacement prévu pour le token, à partir du moment ou il est au bon endroit, toutes commandes emissary ira le chercher n'obligeant pas l'utilisateur à revenir à chaque fois dans son dossier. Ou le cas échéant de pouvoir le préciser dans un fichier de conf. `/etc/emissary/server.yml` est peut-être trop évident ? (sécurité ?) Ou comme dans l'exemple dans un .secret/ ?
Owner

Il est possible de surcharger l'emplacement du jeton via les drapeaux de la ligne de commande, cf. --help sur les différentes commandes de manipulation de l'API Emissary:

--token TOKEN, -t TOKEN                                  use TOKEN as authentication token
   --token-file TOKEN_FILE                                  use TOKEN_FILE as file containing the authentication token (default: ".emissary-token")

Il serait cependant envisageable que modifier l'emplacement par défaut vers un répertoire de configuration du type $HOME/.config/emissary/token afin que le répertoire de travail courant n'influe pas par défaut sur la capacité d'Emissary à trouver le jeton.

Il est possible de surcharger l'emplacement du jeton via les drapeaux de la ligne de commande, cf. `--help` sur les différentes commandes de manipulation de l'API Emissary: ``` --token TOKEN, -t TOKEN use TOKEN as authentication token --token-file TOKEN_FILE use TOKEN_FILE as file containing the authentication token (default: ".emissary-token") ``` Il serait cependant envisageable que modifier l'emplacement par défaut vers un répertoire de configuration du type `$HOME/.config/emissary/token` afin que le répertoire de travail courant n'influe pas par défaut sur la capacité d'Emissary à trouver le jeton.
Owner

Le jeton d'authentification sera désormais cherché aux chemins suivants:

  • $PWD/.emissary-token
  • $HOME/.config/emissary/auth-token

La recherche s'effectuera de manière séquentielle, jusqu'à trouver un fichier existant.

La commande auth create-token écrira désormais par défaut dans le fichier $HOME/.config/emissary/auth-token, sauf si le chemin est modifié en passant le drapeau --output.

Le jeton d'authentification sera désormais cherché aux chemins suivants: - `$PWD/.emissary-token` - `$HOME/.config/emissary/auth-token` La recherche s'effectuera de manière séquentielle, jusqu'à trouver un fichier existant. La commande `auth create-token` écrira désormais par défaut dans le fichier `$HOME/.config/emissary/auth-token`, sauf si le chemin est modifié en passant le drapeau `--output`.
Sign in to join this conversation.
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: arcad/emissary#2
No description provided.