postrust-auth 3.0.0

JWT authentication and role resolution for Postrust
Documentation
{
  "rsa_a": {
    "private_der": "MIIEogIBAAKCAQEAukkTxHWGQM4GUdfM3qrKK2UrbsfzCoyDRnyIVzuEq4qrp4sdF7uS9U7pAto9L+LC7e6Vs9Fv7JbEd85G/SeMv39IeW27HkepUuaSxh6VTBc01Yju4SagZwJTE3MJURzgRCfD/WEoI6HQ190AL8TPtoRwMC9y/YNxrRvjQoA3QEufzYjbnBOoF5Dlr0CJQ4gAPUU0jFBc/V7iMR5GzB6pby3bVpijvhuV3KLmjDovzfi44viDE5fbUeJiJ0fsG1cFMW8dNwQI+owMSoh5zvVwEJlbWYJC8xJ3yqmH2UAr8EKcU3NtxilbQrUaDMU88CpIy/kG0BfA+fEwo9SeqkKbrwIDAQABAoIBACmcrFk8xXYRb5D1qzJsJUgHS+ntqUlIdQSYSd5ukaa+DbUZ2rBT+rJoY517AaMCPPfoTTGDTcSkMxPuFKZ1ILggJyDU1bEgYd7+WXf/GeuK3Yb7lRzfQ4JvHv6fukuPrzsaROoDO3OmMGAf4mxJQvrq36Kr3rxpkcmRCrVurajjOgGqFbz66ynuQm0NaTMqnnOT0T8TMLGci4DvAxqHQVb5Fp8caCrf0yne4uphPewPwV4eoNIz1q5uub0LwAvhApn+MhIKCRN6fSO9RMjdfvbYwjCL8Y7QJYHhHabZdc3BHHYRWUIrAjG51H92Alu3QvhMm0mYPZNa5RKxqR2G1/UCgYEA5xG7YJ3/PTEG4V5pJ/H8DWyU2OoHk1v8J+jf4NcNd+8/pHR6wLExP4aRro/4eth+jFQd0CnwN3HXcJCC8u97A5nwyQMDULgwdLM0Cm+N9Izw2N/frjuToTdk1ENaU99AHKVOOQtYtRqpUOGS+dajvITKWsw8p+RlWqgxUf7o0j0CgYEAzmJj7lXPGMsTxc/gxmRFBPjRFD7R2rFAOVM+JOEDGefmfgRCbgOjgXkZ+YI2bCoKNNlZRTYdGhdCZoltVf+bk3EGmEIYbhaPhH3M7ak2MJXkqgH8tO6VoHYkR7oKlxKPEE/DTvN8S2LqVpAhfI7O8Mz2+7eNFfYJCOu8+UDdYFsCgYByQpNsgFRRVuf3E29eQEuJ+9JSvM8IMCktNvtVvCG918GZubtlg3k913Y8YpbVcC6Lh6DCaaqOUC3fTKZkKMWkjz/AtkuyY5Iacu7d5jHE5tjF9VYvWuhyhOjICZIl/TQ/tgJLNPAlhcyJ4TGDd3653tQNOAcaYlc4EAlraWiJZQKBgFBXLN+St9PG+iN/ENkqH1QYKAvhiH/BkGbAaOiiTzq+c5OKxPFeqT+1jM78SYNBukdodL/kmN+XPln8FXvszPtQfGi5EhmI3sWM00GRJW80apdjvqQQXF7inqztV0IID3kiE72gOzp9fwvDf8WlMhm7MEo84ccyx8GZQy8keQkRAoGACjXXvzwG6ejIZHw+An2BerOW8MpELsec9MCknaTOvoVkMJqWgQEXoVm+EQoa1vLKkT+Q9McI+sGxe8wCWMlV+JrbSQ11sgSOnn8gqvQQmvR6ivYD/SbVRK4s7yGFxbh2Z1eeKT2WFC/iHdUaLudmCJg2RFHZmy8si91b0Mz/s2k=",
    "jwk": {
      "kty": "RSA",
      "n": "ukkTxHWGQM4GUdfM3qrKK2UrbsfzCoyDRnyIVzuEq4qrp4sdF7uS9U7pAto9L-LC7e6Vs9Fv7JbEd85G_SeMv39IeW27HkepUuaSxh6VTBc01Yju4SagZwJTE3MJURzgRCfD_WEoI6HQ190AL8TPtoRwMC9y_YNxrRvjQoA3QEufzYjbnBOoF5Dlr0CJQ4gAPUU0jFBc_V7iMR5GzB6pby3bVpijvhuV3KLmjDovzfi44viDE5fbUeJiJ0fsG1cFMW8dNwQI-owMSoh5zvVwEJlbWYJC8xJ3yqmH2UAr8EKcU3NtxilbQrUaDMU88CpIy_kG0BfA-fEwo9SeqkKbrw",
      "e": "AQAB"
    }
  },
  "rsa_b": {
    "private_der": "MIIEpAIBAAKCAQEAuZ30oQ6sT5zll54iGhqRYZdlfJJzcKz0ToZo9QdTJeFRUK4ymBTG8+sWZ7yapJaAyOL9tvv16fOuHY4cvKUsIhYACg45Qcjka6a3bwt5B4gac5QqraiQJzCyMNWJtP7Ac3X6W1d3zRYjyTkYwCdrigYl4fheamwpxs55Rwv7nfwnWydcnGtAkvpg92qt/32tXQ7aKp39m12oROIrN7HVcL1GTqtHO9ws7Dj1FeqyjMTqKpoCEUhA4rpKNF23DWcm5BenGu8uyqKbSMc9FmzGYRJeMQ0JlBiI8245GOBqNW2rvBZTf+Anb1mkXgdQrF9IbE6XlIFSYlvtbKA77ClUsQIDAQABAoIBABmwQKDhlPtXrXa0Tefq8V/eQg9hfVSEuzL66x+uKdW+PzC5Sws9JOOxD2K/+W753UzwDUj7yebc8KXqexOokFkPTmYV3dq64NH9OrnFjrR6I58HTHjIMVsbJC4Z/3rrHttb4pAtpMjfXYiFvGUrj3iErU1+wCJeYdG/1Yz9nY8Zj/KKUhH50g/UDfYgQ4yeIOlQsp4opQGmWvpNfM80MJJPeh8164TSqzvDWrQjnu1JPAyyvJxL9KPtLCRztNc7drBgEhebuzUCyEYpcnic5thB5OSC2K+SR1jkffeUpvArvLvaaj7O+8xLnOwmzhxyPiwwV+4bsCoQ+1/kl9hbEyECgYEA8oQ6h+GUa6OjOqhjnNA05q0kMtsvPFl4JtwxpSMcfNvKsD6fMw2lKbjrdDifCRdSvfTexo9pC4aZQYYxzqgN2ZA6KrCpKyBlkwvF2t26Ia07/j2bRWKdSnhBA8rW8uh5kBeo9TUPAo8tz171MCdRfO5PxB4WxoDLo+AS6idgtT0CgYEAw+/eTl7xIubtFho9m1lZN2ByP3mQpfvcOuJwTxQo9/tnFiDBUZO01mxp0/kPSXfs22Ao0jL+2bBNEBX8reMqu7EK28SZJFQYpGiJPZV2bTxs1m1/DgSTmr5bPzzqSoM9Pc5WRw6M4QsW97g75Hpua2cBec626lQf2uH2J3YCnIUCgYEA0WEEP6iswboIBW64gfzoj3hQ1m+SeqIsMDDP0+lagRoqBrwqKqPPQxRahH8WH305fLNbW0cZxE+zJXU8r1U8j+gLsCvSAl/4ElqJugrQ1p6AO2LpGaCoeFEWoLWRmyrHOXaT8xCaIvWG8ZDkU2y+2APQblwkAcHVD2k4K11QC2kCgYEAtbfIOG0LPPBo3//UNTinaplzO/VVtusgNCiAOoca++pYkAgu4qaXp+oCOEqb5+pmbIsBMPmErIY64nlR0D+ICWzIAkySL0QjWo9tAQWWQPcyhagllu2dq31yCPNI43RWHvU3xUz0UV7EnVhri5oUwF1W3A5gTHFa3diFP9HN2DUCgYBeYu/PcDMhVeE6wVx+rFk+JtR2vQS/aK9LM3QVJbSYvzKG36+X8lk238wiXT4+OieOIqY4WJb9qZKQ8KjmAOQinqQzut1OonGGbVoiv37+ZAoDF1BAiVf+ch/k8CMJ06sUIwYN2Nw56KvPT7BtYA+gjYMoOWk/eys9tOsVKaPTQQ==",
    "jwk": {
      "kty": "RSA",
      "n": "uZ30oQ6sT5zll54iGhqRYZdlfJJzcKz0ToZo9QdTJeFRUK4ymBTG8-sWZ7yapJaAyOL9tvv16fOuHY4cvKUsIhYACg45Qcjka6a3bwt5B4gac5QqraiQJzCyMNWJtP7Ac3X6W1d3zRYjyTkYwCdrigYl4fheamwpxs55Rwv7nfwnWydcnGtAkvpg92qt_32tXQ7aKp39m12oROIrN7HVcL1GTqtHO9ws7Dj1FeqyjMTqKpoCEUhA4rpKNF23DWcm5BenGu8uyqKbSMc9FmzGYRJeMQ0JlBiI8245GOBqNW2rvBZTf-Anb1mkXgdQrF9IbE6XlIFSYlvtbKA77ClUsQ",
      "e": "AQAB"
    }
  },
  "ec_p256": {
    "private_der": "MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgsHFcsismXQQVrxmI4UBcR3qiDGxPMCqidq3ThiWTkbGhRANCAAToNqhyWEnLpS6ejgfJrVN6i1nIYclcyweB+njmBGqz+mvajYW0fGeGrs/+VFcIlJoXsR/yWjMZ2KRZG9/FnHuV",
    "jwk": {
      "kty": "EC",
      "crv": "P-256",
      "x": "6DaoclhJy6Uuno4Hya1TeotZyGHJXMsHgfp45gRqs_o",
      "y": "a9qNhbR8Z4auz_5UVwiUmhexH_JaMxnYpFkb38Wce5U"
    }
  },
  "ec_p384": {
    "private_der": "MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDBXkI9qLQOZsmLyvlyOmyYoSqN3ghQjndivzNmSgaNGERx8AP2gjggIO33V4kI3CtGhZANiAAQefwsagOy3u1qv0+ogKY0+2t2ucsqkVwXSdTNFHxsdR5A0g9la34sZq5sa5+nET+Ogsxa2uDGWqp6NiUHnxAi8zibMt3il/JYvyEgXLDBAj9tI3CngxTZAKHDmXuNWQcQ=",
    "jwk": {
      "kty": "EC",
      "crv": "P-384",
      "x": "Hn8LGoDst7tar9PqICmNPtrdrnLKpFcF0nUzRR8bHUeQNIPZWt-LGaubGufpxE_j",
      "y": "oLMWtrgxlqqejYlB58QIvM4mzLd4pfyWL8hIFywwQI_bSNwp4MU2QChw5l7jVkHE"
    }
  },
  "ed25519": {
    "private_der": "MC4CAQAwBQYDK2VwBCIEIBkREQSsypaph+1zt2IvmEHTV3TdSg23Hii75aUfAKnh",
    "jwk": {
      "kty": "OKP",
      "crv": "Ed25519",
      "x": "IYyMp_vtOjZsG-vmB9aqT87VSA3rrGWzbu7YM8YFpXM"
    }
  }
}