Skip to content

Instantly share code, notes, and snippets.

@badri
badri / node-pools.yaml
Created February 25, 2023 05:14
AKS node pool YAML
- name: "nodepool1"
vm_size: "Standard_D2_v2"
node_count: 1
tags:
- project: foo
- environment: dev
- name: "nodepool2"
vm_size: "Standard_D2_v2"
node_count: 2
tags:
@badri
badri / response.json
Created February 7, 2023 09:32
Keycloak oauth tokens
{
"access_token": "eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICI4VlVBWFQ1U0VFeDB5VklqR1FLemxjaXZoanl4aDQwOEJHbzQ4dmItUG9NIn0.eyJleHAiOjE2NzU3NTQwNzksImlhdCI6MTY3NTc1NDAxOSwiYXV0aF90aW1lIjoxNjc1NzU0MDE5LCJqdGkiOiI5ODUzYWEyOS05YzM3LTQzYjgtOWI2Ni1iYzE0ZjhjZjE2MzQiLCJpc3MiOiJodHRwOi8vbG9jYWxob3N0OjgwODAvcmVhbG1zL21hc3RlciIsInN1YiI6IjZmMDhlNzFlLTE5MWEtNDc4ZS04ZTIyLWVmZDU4OTE1OGQ5MCIsInR5cCI6IkJlYXJlciIsImF6cCI6ImFjY291bnQiLCJzZXNzaW9uX3N0YXRlIjoiNTc0NTBmYTctZDgwNS00NmM0LWIxMjctNzNmMmQ2YzMzNmUwIiwiYWNyIjoiMSIsInJlc291cmNlX2FjY2VzcyI6eyJhY2NvdW50Ijp7InJvbGVzIjpbIm1hbmFnZS1hY2NvdW50IiwibWFuYWdlLWFjY291bnQtbGlua3MiLCJ2aWV3LXByb2ZpbGUiXX19LCJzY29wZSI6Im9wZW5pZCBlbWFpbCBwcm9maWxlIiwic2lkIjoiNTc0NTBmYTctZDgwNS00NmM0LWIxMjctNzNmMmQ2YzMzNmUwIiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJwcmVmZXJyZWRfdXNlcm5hbWUiOiJhZG1pbiJ9.XFjPipVVJ6VR2FIPRAkGn-1tW6tHimHfhvncJ-Rl_3N9vK3Ty4dZYMtyZvrghG03Sbj9NdFuli4JHXbfWWZmsmUBN5fCixzvO0KkGIbYqKzixV2gAqBXCwVMCvYTSprvD_jXZldoR4TqAtnEdrqfwI87VVf5MHrKaCQqkF9oCLz31naarpg0fgzPDQAiZtCufpyY2o9PM75uSW
@badri
badri / namespace.yaml
Last active January 24, 2023 08:06
Namespace and service account
apiVersion: v1
kind: Namespace
metadata:
name: kong-api-gateway
labels:
istio.io/rev: asm-1153-6
import paho.mqtt.client as mqtt
from random import randrange, uniform
import time
mqttBroker ="vernemq.itransz.in"
client = mqtt.Client("Temperature_Inside")
client.connect(mqttBroker, 443)
while True:
@badri
badri / sign.lua
Created November 4, 2022 15:48
Sign a payload using keypair and verify signature
local resty_rsa = require "resty.rsa"
local b64 = require("ngx.base64")
-- local rsa_public_key, rsa_priv_key, err = resty_rsa:generate_rsa_keys(2048)
-- if not rsa_public_key then
-- ngx.say('generate rsa keys err: ', err)
-- end
local algorithm = "SHA256"
local key = "MHwwDQYJKoZIhvcNAQEBBQADawAwaAJhAOz0YTcc5qsRSyNYUBPD/6H/vcbFqtTb+IcW45PAZ5lMIMj4DLdNF+/4ZlVSVKU9QfC5lio/X76sZhwG2u+7vwOBi1awuwQ91xVroeR4ozpRqs31DYDl7uCfbMZhbG2m4wIDAQAB"
local rsa_public_key = "-----BEGIN PUBLIC KEY-----\n" .. key .. "\n-----END PUBLIC KEY-----"
@badri
badri / verif.lua
Created November 4, 2022 12:57
SAML2 verification
local resty_rsa = require "resty.rsa"
local function verify_saml2_signature(payload, signature, public_key)
local rsa_public_key = "-----BEGIN PUBLIC KEY-----\n" .. public_key .. "\n-----END PUBLIC KEY-----"
local pub, err = resty_rsa:new({ public_key = rsa_public_key, key_type = resty_rsa.KEY_TYPE.PKCS8, algorithm = "SHA256" })
if not pub then
ngx.say('unable to extract public key')
return nil
end
@badri
badri / saml.xml
Last active November 7, 2022 06:25
working SAML 1/2 token
<saml:Assertion xmlns:saml="http://www.example.com/saas/assertion">
<Signature>
<KeyAlias>17GLrwRZj5LzsI7lNyxTJd0EGPeXYT6qbb7lcLsCTwQ</KeyAlias>
<SignatureValue>RRx7/7yOIERFv86xTmrT8Ojq7G5cQkg51duzNSp8TEul+OJmMC4MMptOsWihbRadhxh9XGmQiPeB8tYFTjbLaTKBuv5XK1B2JQCc0OOXndZEq9wNH+IHpaXSb60XpqHY</SignatureValue>
</Signature>
<saml:Subject>
<saml:NameID SPNameQualifier="http://sp.example.com/demo1/metadata.php" Format="urn:oasis:names:tc:SAML:2.0:nameid-format:transient">_ce3d2948b4cf20146dee0a0b3dd6f69b6cf86f62d7</saml:NameID>
<saml:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<saml:SubjectConfirmationData NotOnOrAfter="2024-01-18T06:21:48Z" Recipient="http://sp.example.com/demo1/index.php?acs" InResponseTo="ONELOGIN_4fee3b046395c4e751011e97f8900b5273d56685"/>
</saml:SubjectConfirmation>
@badri
badri / Dockerfile
Last active December 6, 2022 08:22
Ubuntu working version
FROM ubuntu:focal
LABEL maintainer="Kong Docker Maintainers <docker@konghq.com> (@team-gateway-bot)"
ARG ASSET=ce
ENV ASSET $ASSET
ARG EE_PORTS
COPY kong-enterprise-edition-2.8.2.2.all.deb /tmp/kong.deb
@badri
badri / Dockerfile
Last active November 11, 2022 12:13
Dockerfile for e2e plugin
FROM kong/kong-gateway:2.8.1.1-rhel7
USER root
RUN yum install -q -y autoconf automake libtool m4 make
RUN mkdir /expat /rocks
# Can be downloaded here: https://github.com/libexpat/libexpat/releases/tag/R_2_5_0
COPY libexpat-R_2_5_0.tar.gz /expat
# Rock files can be downloaded from https://luarocks.org/
COPY luaexpat-1.5.1-1.src.rock /rocks
COPY expadom-0.1.0-1.src.rock /rocks
COPY luautf8-0.1.4-1.src.rock /rocks
@badri
badri / verify.lua
Created October 18, 2022 07:17
SAML 1 and 2 signature gen
local resty_rsa = require "resty.rsa"
local b64 = require("ngx.base64")
-- local rsa_public_key, rsa_priv_key, err = resty_rsa:generate_rsa_keys(2048)
-- if not rsa_public_key then
-- ngx.say('generate rsa keys err: ', err)
-- end
local algorithm = "SHA256"
local key = "MHwwDQYJKoZIhvcNAQEBBQADawAwaAJhAOz0YTcc5qsRSyNYUBPD/6H/vcbFqtTb+IcW45PAZ5lMIMj4DLdNF+/4ZlVSVKU9QfC5lio/X76sZhwG2u+7vwOBi1awuwQ91xVroeR4ozpRqs31DYDl7uCfbMZhbG2m4wIDAQAB"
local rsa_public_key = "-----BEGIN PUBLIC KEY-----\n" .. key .. "\n-----END PUBLIC KEY-----"