From 0d00065bfff93d025c41cb96a26988c8d1d38e8a Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Mon, 29 Oct 2018 09:48:08 +0200 Subject: Add: script to benchmark http API over localhost --- benchmark-http | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ create-token | 44 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 95 insertions(+) create mode 100755 benchmark-http create mode 100755 create-token diff --git a/benchmark-http b/benchmark-http new file mode 100755 index 0000000..0ad11b0 --- /dev/null +++ b/benchmark-http @@ -0,0 +1,51 @@ +#!/bin/sh +# Copyright (C) 2018 Lars Wirzenius +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . + +set -eu + +rm -rf tmp +mkdir tmp +mkdir tmp/store + +token="$(./create-token < test-key)" + +cat > tmp/conf < tmp/data <. + + +import sys +import time + +import Crypto.PublicKey.RSA + +import apifw + +key_text = sys.stdin.read() +key = Crypto.PublicKey.RSA.importKey(key_text) + +iss = 'test-issuer' +aud = 'test-audience' +sub = 'test-subject' +scope = 'create update show delete' +lifetime = 24 * 60 * 60 + +now = time.time() +claims = { + 'iss': iss, + 'sub': sub, + 'aud': aud, + 'exp': now + lifetime, + 'scope': scope, +} + +token = apifw.create_token(claims, key) +sys.stdout.write(token.decode('ascii')) -- cgit v1.2.1