IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

API en Powershell [PowerShell]


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2018
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2018
    Messages : 43
    Par défaut API en Powershell
    Salut,

    Je me suis dit qu'il serait sympa de disposer d'une API permettant de faire des requêtes interprétées en Powershell et avoir un retour en JSON exploitable par n’importe quel langage.
    Du coup voilà où j'en suis pour le moment: POSH REST API

    Je ne suis pas parti de zéro, expliqué sur le Github mais il y avait une base que j'ai modifié afin de rendre le code plus modulable.

    La création du token n'est pas automatique, j'ai pas eu le temps de me pencher sur un système plus sympa, là j'avoue c'est vraiment à l'arrache mais il me fallait un système de token pour éviter que n'importe qui puisse s'en servir.
    A ne pas utiliser en prod évidemment, c'est plus du Proof of Concept qu'autre chose.

    Rien d'extraordinaire, mais si jamais ça peut servir ou si quelqu'un souhaite participer au délire

    Voili voilou, vos avis et dans quelles circonstances on pourrait l'utiliser selon vous ?

  2. #2
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par mrtrez Voir le message
    dans quelles circonstances on pourrait l'utiliser selon vous ?
    A priori, n'ayant pas tester le code, un des intérêts est qu'on livre une api (une url) et pas un script.
    Ceci dit je débute sur le sujet et sur un projet en entreprise de ce type.

    Personnellement sur un POC je préfère la doc au code, et les trucs à l'arrache je m'en éloigne autant que je peux. En passant je loue ta franchise.
    Ton POC gère-t-il plusieurs connexions simultanées ?
    Il y a un chemin codé en dur dans le code.
    Les ports utilisés dans ton code peuvent ne pas être ouvert et certaines prérequis implicites ne pas être respecté dans certains cas. Cas que je rencontre et qui rend le codage malaisé.

  3. #3
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2018
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2018
    Messages : 43
    Par défaut
    Salut et merci pour ta réponse Laurent, j'ai bien cru que mon post passerait aux oubliettes.
    Cela dit si ça devait arriver, ça ne serait pas un drame non plus étant donné que c'est un projet pour le "fun" et surtout pour continuer d'apprendre sur plusieurs technos et fonctionnements.

    A priori, n'ayant pas tester le code, un des intérêts est qu'on livre une api (une url) et pas un script.
    Vrai et j'y vois totalement un intérêt d'ailleurs, je voulais être sûr que je ne sois pas le seul, auquel cas ce projet n'avait pas de sens. Les possibilités sont immenses !

    Il y a un chemin codé en dur dans le code.
    En ce moment j'étudie un peu les systèmes de token qui existent et comment ils fonctionnent. Ce que je me dis, c'est que même si on met en place un système d'échange avec chiffrement asymétrique, le code étant public et la clé privée y serait stockée, je ne vois pas comment cela pourrait prétendre être 'sécurisé'. A moins de mettre un système de génération aléatoire de clé privée? Mais pareil, le code source étant dispo, compliqué. Ou alors, il faut considérer que la partie token est un autre projet ?
    Le but tu l'auras compris, et je suis totalement d'accord avec toi sur le fait que "les chemins en dur c'est le mal", ça serait de s'affranchir de ce chemin et de ce fichier dangereux. Surtout quand dans le code final il y a plusieurs milliers de lignes et qu'on doit tout vérifier pour voir s'il ne reste rien à modifier pour que ça fonctionne chez nous.

    Ton POC gère-t-il plusieurs connexions simultanées ?
    J'avais déjà testé ce système de HttpListener quand je codais mes GUI d'app Powershell en HTML, ça me permettait d'avoir des formulaires sympas et rapidement, ainsi qu'un système de page de résultat etc.
    Et je peux confirmer que plusieurs connexions simultanées sont gérées par le système. Je ne sais cependant pas jusqu'à quelle limite, ça serait à tester.


    Les ports utilisés dans ton code peuvent ne pas être ouvert et certaines prérequis implicites ne pas être respecté dans certains cas. Cas que je rencontre et qui rend le codage malaisé.
    Je n'ai pas encore pris le temps de voir cela, en effet cette contrainte est à prendre en compte. Soit on laisse la possibilité de le choisir, soit on le choisit automatiquement mais c'est plutôt "risqué".

    Pour la partie documentation, j'avoue que ce n'est pas ce que je préfère et surtout je n'y suis pas spécialement doué. Mais c'est prévu, le mieux est que je l'alimente au fur et à mesure. Je vais voir ça.
    Et je t'en prie pour la franchise.

    Merci de ta contribution, c'est chouette !
    Je vais de ce pas me pencher sur l'optimisation et continuer d'étudier le "tokenning".

  4. #4
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2018
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2018
    Messages : 43
    Par défaut
    GitHub mis à jour suite à ton retour, plus de chemin en dur (mais tjrs pas de token automatisé), plus de port en dur mais au choix au démarrage.
    Merci Read-Host

    J'en ai profité pour upgrade un peu la doc sur GitHub (enfin le ReadMe)

  5. #5
    Membre averti

    Homme Profil pro
    Analyse système
    Inscrit en
    Juillet 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Juillet 2003
    Messages : 30
    Par défaut
    Citation Envoyé par mrtrez Voir le message
    J'en ai profité pour upgrade un peu la doc sur GitHub (enfin le ReadMe)
    hello,

    Pas de push sur ton git depuis 5 mois... Courage! Exécuter du posh depuis une requête REST est une très bonne idée. Je travaille sur ce sujet depuis 2016, pour une banque, pas pour le "fun" . Tu devrais continuer ton exploration du sujet. Dis-toi que c'est comme de la domotique. Si tu sais développer, tu fais ta propre installation. Si tu ne sais pas, tu installes une box et y intègres tes scripts.

  6. #6
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2018
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2018
    Messages : 43
    Par défaut
    Salut et merci de ton soutien !
    En fait j'ai continué depuis, mais en entreprise. l'API est utilisée par un centre de formation afin de déployer des VM sur HyperV depuis un joli site web (que je ne gère pas du coup).
    Ça fonctionne bien et je pense faire une maj de ce git un jour. Mon soucis étant que l'actuel est trop généraliste et je pense que les gens n'y voient pas d'intérêt tant la modularité de l'API est grande. Avec un Switch on peut gérer des actions en illimité !

    Merci de ton retour c'est cool, je n'abandonne pas j'ai surtout pas le temps 😅😁

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PowerShell] API Bittrex en powershell depuis curl
    Par darkwall_37 dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 20/12/2017, 23h33
  2. Réponses: 3
    Dernier message: 09/07/2017, 20h59
  3. Problèmes suite au portage d'API Win32 sous PowerShell
    Par Laurent Dardenne dans le forum Windows
    Réponses: 4
    Dernier message: 05/04/2009, 15h54
  4. Documentation gratuite sur l'API Windows, COM, DCOM, OLE, etc.
    Par Community Management dans le forum Windows
    Réponses: 1
    Dernier message: 16/11/2006, 15h28
  5. Une petite aide pour les API ?
    Par Yop dans le forum Windows
    Réponses: 2
    Dernier message: 04/04/2002, 21h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo