diff --git a/arrow-flight/examples/data/ca.pem b/arrow-flight/examples/data/ca.pem deleted file mode 100644 index d81956096677..000000000000 --- a/arrow-flight/examples/data/ca.pem +++ /dev/null @@ -1,28 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIE3DCCA0SgAwIBAgIRAObeYbJFiVQSGR8yk44dsOYwDQYJKoZIhvcNAQELBQAw -gYUxHjAcBgNVBAoTFW1rY2VydCBkZXZlbG9wbWVudCBDQTEtMCsGA1UECwwkbHVj -aW9ATHVjaW9zLVdvcmstTUJQIChMdWNpbyBGcmFuY28pMTQwMgYDVQQDDCtta2Nl -cnQgbHVjaW9ATHVjaW9zLVdvcmstTUJQIChMdWNpbyBGcmFuY28pMB4XDTE5MDky -OTIzMzUzM1oXDTI5MDkyOTIzMzUzM1owgYUxHjAcBgNVBAoTFW1rY2VydCBkZXZl -bG9wbWVudCBDQTEtMCsGA1UECwwkbHVjaW9ATHVjaW9zLVdvcmstTUJQIChMdWNp -byBGcmFuY28pMTQwMgYDVQQDDCtta2NlcnQgbHVjaW9ATHVjaW9zLVdvcmstTUJQ -IChMdWNpbyBGcmFuY28pMIIBojANBgkqhkiG9w0BAQEFAAOCAY8AMIIBigKCAYEA -y/vE61ItbN/1qMYt13LMf+le1svwfkCCOPsygk7nWeRXmomgUpymqn1LnWiuB0+e -4IdVH2f5E9DknWEpPhKIDMRTCbz4jTwQfHrxCb8EGj3I8oO73pJO5S/xCedM9OrZ -qWcYWwN0GQ8cO/ogazaoZf1uTrRNHyzRyQsKyb412kDBTNEeldJZ2ljKgXXvh4HO -2ZIk9K/ZAaAf6VN8K/89rlJ9/KPgRVNsyAapE+Pb8XXKtpzeFiEcUfuXVYWtkoW+ -xyn/Zu8A1L2CXMQ1sARh7P/42BTMKr5pfraYgcBGxKXLrxoySpxCO9KqeVveKy1q -fPm5FCwFsXDr0koFLrCiR58mcIO/04Q9DKKTV4Z2a+LoqDJRY37KfBSc8sDMPhw5 -k7g3WPoa6QwXRjZTCA5fHWVgLOtcwLsnju5tBE4LDxwF6s+1wPF8NI5yUfufcEjJ -Z6JBwgoWYosVj27Lx7KBNLU/57PX9ryee691zmtswt0tP0WVBAgalhYWg99RXoa3 -AgMBAAGjRTBDMA4GA1UdDwEB/wQEAwICBDASBgNVHRMBAf8ECDAGAQH/AgEAMB0G -A1UdDgQWBBQdvlE4Bdcsjc9oaxjDCRu5FiuZkzANBgkqhkiG9w0BAQsFAAOCAYEA -BP/6o1kPINksMJZSSXgNCPZskDLyGw7auUZBnQ0ocDT3W6gXQvT/27LM1Hxoj9Eh -qU1TYdEt7ppecLQSGvzQ02MExG7H75art75oLiB+A5agDira937YbK4MCjqW481d -bDhw6ixJnY1jIvwjEZxyH6g94YyL927aSPch51fys0kSnjkFzC2RmuzDADScc4XH -5P1+/3dnIm3M5yfpeUzoaOrTXNmhn8p0RDIGrZ5kA5eISIGGD3Mm8FDssUNKndtO -g4ojHUsxb14icnAYGeye1NOhGiqN6TEFcgr6MPd0XdFNZ5c0HUaBCfN6bc+JxDV5 -MKZVJdNeJsYYwilgJNHAyZgCi30JC20xeYVtTF7CEEsMrFDGJ70Kz7o/FnRiFsA1 -ZSwVVWhhkHG2VkT4vlo0O3fYeZpenYicvy+wZNTbGK83gzHWqxxNC1z3Etg5+HRJ -F9qeMWPyfA3IHYXygiMcviyLcyNGG/SJ0EhUpYBN/Gg7wI5yFkcsxUDPPzd23O0M ------END CERTIFICATE----- diff --git a/arrow-flight/examples/data/ca_root.key b/arrow-flight/examples/data/ca_root.key new file mode 100644 index 000000000000..b5ae14a8c500 --- /dev/null +++ b/arrow-flight/examples/data/ca_root.key @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQCPOUfaBhf+grVf +DTBMpCX/sD6T4sPSIV/e/lwXw05gVT2Uh3vW4iuKZnxXkEwn66h8FZCeRXdkFUPd +Nid2losqwJX4RlZHJvcLK5abFFuncyumU3/szsG+oA2m6i7r1a+msa53puJgfvF+ +qIP8U8OSyTPl4qKgDMq+Q8Gk2UWXcFSjOz4pe0LAaR2Sopp5tU0TBopBgZWp5OX+ +Nz23zrPwYn9EHKa2npLDqZQRMPGgg5H02inD7RrGhOEamacRSsGsrArUd3Qfk3V2 +mUkSPhixrhneWdXaAUYYbcoVBpMMoHn0bVOT+feRnAHqKxEjQOfhq6av+aAYdaaw +2aeyxFSPAgMBAAECggEAIBMu8TfOJdR18+yLNY7JZ8K7sPjm6+dHhjQmwbeelNpi +KSJSbKRIJf2fuSh6tbIEEI3vzlI2U7ajdSYMnnVGg3OP4oM2DUc/qkO/vclIYW7c +hqpKiuke4KcNh6UIjw5TARznuqooJn4nbTsmG9tSgEwJEGG6E+fpe8TG2DlEaY6L +seXzFxEKbS8Jac8hex3lCp16FPgyP9I3u1ukqsj2S4+VcmzFT4L9QxK0tgjOotUb +Mem3cO5OYDfkzMj+JKz+58G+n/5TILCEq86O+JG7fFzjA9BPp6wZgWHKG6bDDHoV +CwNExOooVPYSyHebVg+K0AgRTwwAouLWboF5k4GtqQKBgQDKFt+kd1qUx3iqIREi +jQtC8/ADGTyvMLJkA8fCxZYsn+hVp3G5uZxbOWWNU+j9B7X5gpljS5MxSvSAXLap +tYCm1wkCB9qkZ5RxPPlE7fOCbmpJcZn39lC6q32I2U2IFM3VGzXvS6Eq2TJcdomb +Q6WaNAuGoHtmdHsTF6IQQH3PhQKBgQC1bliMVbLoJ+c2rXAhmTJLsgesJQCpkJRH +hOuiQOjH+ytSywIJd3K0vVHcnvCguS4wsw10N/V07KMuKjBztcWK0XB65MVczxQU +mQNEOO5DnqNtD73ewwZJpHO52zMb5nuiBW1TtZJR6Ejb+/PccJJFQtQh0fgDNIgv +SDeJr00uAwKBgQCkTya0zQoL74bvJIWPBwiB/l5F1q4dbsWMRfqUJRxt2fIIOmVf +8UbscOVdnDzSBgPyAzp9nkPmDyBugXNO1rDsdefwC7y8cS8jRsURQzr68JVgc4oR +LucCb05ZBv1fyDJ2s3INxvsaIJAu134YjE7H6sr4QeEzMz+iDVQKTLU+FQKBgQCP +VSixXXbkv7mDUcvXT08TzAcRsX3vd+AdDF6XpY4Bh2V3mBf44JwHO9XzZMGXSBS8 +tof3e8n34IceDoiOsVjpzYJ+JEPjiVlE2IljGVLqquZTX+9RkGNkRH6Eoy6iaRjd +LEptqnF5Mfh1invieDCmdSBfw6Ca76JzMCtoI8zmfwKBgQDJE2UZJBfsFpXceqfV +fYQHb4t5tu+kch4JrDpJPgMtTvZ0nQtD7aI/gPQIryl4K2MKwIO3vPs/rNNJuVWV +K9ZTTnqqbiLII94ulYR3YRuotysEMkO2eJ6UsfnPjgLpJmaAQrHD4XNcpE60bmJf +VlViy6Cnn8Xj+CC3HnF1XppyWw== +-----END PRIVATE KEY----- diff --git a/arrow-flight/examples/data/ca_root.pem b/arrow-flight/examples/data/ca_root.pem new file mode 100644 index 000000000000..2e16a2f74c5a --- /dev/null +++ b/arrow-flight/examples/data/ca_root.pem @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDGzCCAgOgAwIBAgIUFd5IwYARWN1WGmiqnpzxQ3pE3vAwDQYJKoZIhvcNAQEL +BQAwHTELMAkGA1UEBhMCRkkxDjAMBgNVBAMMBXZhaGlkMB4XDTI0MTAxODE4MTcy +NVoXDTI5MTAxNzE4MTcyNVowHTELMAkGA1UEBhMCRkkxDjAMBgNVBAMMBXZhaGlk +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAjzlH2gYX/oK1Xw0wTKQl +/7A+k+LD0iFf3v5cF8NOYFU9lId71uIrimZ8V5BMJ+uofBWQnkV3ZBVD3TYndpaL +KsCV+EZWRyb3CyuWmxRbp3MrplN/7M7BvqANpuou69WvprGud6biYH7xfqiD/FPD +kskz5eKioAzKvkPBpNlFl3BUozs+KXtCwGkdkqKaebVNEwaKQYGVqeTl/jc9t86z +8GJ/RBymtp6Sw6mUETDxoIOR9Nopw+0axoThGpmnEUrBrKwK1Hd0H5N1dplJEj4Y +sa4Z3lnV2gFGGG3KFQaTDKB59G1Tk/n3kZwB6isRI0Dn4aumr/mgGHWmsNmnssRU +jwIDAQABo1MwUTAdBgNVHQ4EFgQUu2qQpBe9cOo0HndIR9VvpbCJnyEwHwYDVR0j +BBgwFoAUu2qQpBe9cOo0HndIR9VvpbCJnyEwDwYDVR0TAQH/BAUwAwEB/zANBgkq +hkiG9w0BAQsFAAOCAQEAFqbmJn8kPwKGqTiD2pUHzdUJz1QnqMOc0oZ+VzUyCVuq +VFB3HX6Bjjc/NEDVSIRh0hsCB0s6bSwb23nmtlpZQlHF3JiuH2T0l1gGhVQBnbGj +CBeldH7/VdcB9r/RASX2wkL8all0FswFx5dbiyrGOYeVUt5tV7mxe40LQLisWuu0 +SY6cPs1TjCVy7oJ61/++OfyffGyBiANXRNYSROeNxxOtXwVqKNP4eWX7UVxXgDKF +iaGG5g9S6e3AefEgUTSWz3LWyMqT+VbTuqLw1NG9O112pFsPAEr4FTNh6ljIEVeH +kvoBrHgP8VDV30GmganXu9LNOIIuFqhOoPxZYW1JGQ== +-----END CERTIFICATE----- diff --git a/arrow-flight/examples/data/client.key b/arrow-flight/examples/data/client.key new file mode 100644 index 000000000000..88dc742fbc89 --- /dev/null +++ b/arrow-flight/examples/data/client.key @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDO9UXCYgahDzPB +WsSlGRDEw8a0lhW/AP8dHygEiWcHJ6Fa0Q7/t7/SMJQzJsnM7qMKDqCxJfutDFFO +8WykoIgX06ENcTOei+DRo9NUmr2VRv5Uk3PN/AChwwm+/VCyRcx45ImumL7dWznp +/a5GRWS2LtJ+j7zUVurIivV2TOT84zMWxvDTMfwyV93DMbKYdzVDIhjLO+AS8tFM +rd2fsLAhDOb2iJ4HpR5Bfl47LuCyH6/2NyB8h53HI5bm/eo14gR3UtEY2UBTgJcC +8pPXmsYqZNOhmIYxA8rgpAFe+7IEGyRQU1zPLHgKtGSJXXEwfWd2Tspamy1/4nbx +sMOjyTD1AgMBAAECggEAFOomjZlYcChYI58npkOdNTVPvGo6cl4Iagn/Ak5cchWo +McRUzrTkFrrAD1dJJ4OqSFboGF7tSzSmduLhBtYOStIhQXmCLPCX3LfAoJkutYpC +I4vvNQ7VhYNvVbTF1e5F1qXJ4DIhf787YBE57nIO1nZu4UlnXNIX0gJxAe6NaZzh +w6eWZRNi/BOat3lCGxo5Q5PBsoRwEILsF9SlMimwSesKqivG4WVySZzygpsnp+rv +TV2WPyw0m05tpr0Y+z5fUayPi5Vtxs8DoLKfnKD+/HOLniPaaDhHcD4R0DU/O8rb +0f6zfNW0S3A5esrKsIXZ02ljjEIjeGs6ZnJUXf5kwQKBgQDn8n61UEm42bDPmwv2 +8b935Ghp5TAYsHH5Ti0YCK6aeOrCCPoRmb9cG3+zAo6nzad3QtULIJhc/I/wTbJ2 ++EXSamMw3Pieub+b8lbUwe2js3AOxx/hoIkjFK4GQALfCjEejoVSQgx84c+Xh3Xx +EBjPi7Bf1EzetSQgVr/7310tUQKBgQDka2Px49ufA4P3WTMB3sCJ2mBEjZoxfV4m +AX1Kwerp9Im2VT8JdzNFLi4hUuxIFJHq13NqQDPo38vG3iVPb0QLZUNg/eD3F53d +5JKcwDqyi+K3GuNN8JVDFcTP23svKZvNrUxrH/X/rTjf6H+o0PCU7hbcaRihBj4O +LodhXM1QZQKBgQCcnLz3ehW9LafYFe2XORY6QsxJrEm0cfcTCbkjAEG85aZFi8Am +ADUYYSzxVumx3geUXFjzYXffWV1rOVsmP28Nq238QUfSDMOW7aO5lpP5s6AXKlaZ +h0bxm/YBHFmT9hLCeiMFLrm13NbJjtqRAXhvMvfNTND2k0KoX0rUK7aDcQKBgANc +IQg51c0s/A/zW/C3GhXtBGV9v7rioTPl6bXjzFTMqAnqjxbQjgyCdWNAGQGma88M +hEIX16uhPxoZwmq8tD+GqcsPcPOxgTz2U8HCghqGPDt9RcKru0ZVV6PHErTK4+PO +nMUmnzO3lJKWlOoiyKcoKWXsldQoh1kmDg+8kbiRAoGBALLmrQwJX+j28ZFZAN/2 +SNBryhxtwDcpTSf1Qb4rbtCxJVwCTq9yUdcYA2SsvkA68pNo5mOe/ft6T0GYho1/ +LiJJXduKiTsHV0xpeqA+imuIZDAc6Dgc6GWqskVn6XKUCGcFFvdxoBxAlBVmsbhS +ajeci0ZCJpUvebBrNmaLXLrX +-----END PRIVATE KEY----- diff --git a/arrow-flight/examples/data/client.pem b/arrow-flight/examples/data/client.pem new file mode 100644 index 000000000000..5ea6ccb9c3d5 --- /dev/null +++ b/arrow-flight/examples/data/client.pem @@ -0,0 +1,19 @@ +-----BEGIN CERTIFICATE----- +MIIDKzCCAhOgAwIBAgIURGJB6QyNfnGJiavpS6DB4+o4YPkwDQYJKoZIhvcNAQEL +BQAwHTELMAkGA1UEBhMCRkkxDjAMBgNVBAMMBXZhaGlkMB4XDTI0MTAxODE4MTcy +NVoXDTI5MTAxNzE4MTcyNVowHTELMAkGA1UEBhMCRkkxDjAMBgNVBAMMBXZhaGlk +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzvVFwmIGoQ8zwVrEpRkQ +xMPGtJYVvwD/HR8oBIlnByehWtEO/7e/0jCUMybJzO6jCg6gsSX7rQxRTvFspKCI +F9OhDXEznovg0aPTVJq9lUb+VJNzzfwAocMJvv1QskXMeOSJrpi+3Vs56f2uRkVk +ti7Sfo+81FbqyIr1dkzk/OMzFsbw0zH8MlfdwzGymHc1QyIYyzvgEvLRTK3dn7Cw +IQzm9oieB6UeQX5eOy7gsh+v9jcgfIedxyOW5v3qNeIEd1LRGNlAU4CXAvKT15rG +KmTToZiGMQPK4KQBXvuyBBskUFNczyx4CrRkiV1xMH1ndk7KWpstf+J28bDDo8kw +9QIDAQABo2MwYTAfBgNVHSMEGDAWgBS7apCkF71w6jQed0hH1W+lsImfITAJBgNV +HRMEAjAAMBQGA1UdEQQNMAuCCWxvY2FsaG9zdDAdBgNVHQ4EFgQUX3kjlcnwAErq +/sdYXJAAGQevoS0wDQYJKoZIhvcNAQELBQADggEBAEiM/+/xI60HDz9ArPiJQJgS +lj7Q+F+FLcQVHfmjTbfuaPQD18BSOI+Oj9qKsxD8LAtkY/Go+Ppq/wGtN72KdLfR +sfBiPrES/vRZaF1UriEq7hJTsSmiQwocbobFZ7T+eBRjwPG5XgqgOg6O3LJQPDVU +lrzW1EkruBysdZj2ThN7yPoDQl9m1zWNvyBRDUvDsIiUkYZOwP6vfCXsImUGzR0A +q6DxVXM2WVoCILRLjYD+nlSmcuxbzOuXXHarIHPC3zJtaiNAboEuF2C7fuGimP2Z +xT67aVWgVx2DW/IycIGslbdnMeMOHxkEE2o7ubHb2T2/ZRmTR/USgnbAu3vXDCc= +-----END CERTIFICATE----- diff --git a/arrow-flight/examples/data/client1.key b/arrow-flight/examples/data/client1.key deleted file mode 100644 index f4d8da2758ac..000000000000 --- a/arrow-flight/examples/data/client1.key +++ /dev/null @@ -1,28 +0,0 @@ ------BEGIN PRIVATE KEY----- -MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCiiWrmzpENsI+c -Cz4aBpG+Pl8WOsrByfZx/ZnJdCZHO3MTYE6sCLhYssf0ygAEEGxvmkd4cxmfCfgf -xuT8u+D7Y5zQSoymkbWdU6/9jbNY6Ovtc+a96I1LGXOKROQw6KR3PuqLpUqEOJiB -l03qK+HMU0g56G1n31Od7HkJsDRvtePqy3I3LgpdcRps23sk46tCzZzhyfqIQ7Qf -J5qZx93tA+pfy+Xtb9XIUTIWKIp1/uyfh8Fp8HA0c9zJCSZzJOX2j3GH1TYqkVgP -egI2lhmdXhP5Q8vdhwy0UJaL28RJXA6UAg0tPZeWJe6pux9JiA81sI6My+Krrw8D -yibkGTTbAgMBAAECggEANCQhRym9HsclSsnQgkjZOE6J8nep08EWbjsMurOoE/He -WLjshAPIH6w6uSyUFLmwD51OkDVcYsiv8IG9s9YRtpOeGrPPqx/TQ0U1kAGFJ2CR -Tvt/aizQJudjSVgQXCBFontsgp/j58bAJdKEDDtHlGSjJvCJKGlcSa0ypwj/yVXt -frjROJNYzw9gMM7fN/IKF/cysdXSeLl/Q9RnHVIfC3jOFJutsILCK8+PC51dM8Fl -IOjmPmiZ080yV8RBcMRECwl53vLOE3OOpR3ZijfNCY1KU8zWi1oELJ1o6f4+cBye -7WPgFEoBew5XHXZ+ke8rh8cc0wth7ZTcC+xC/456AQKBgQDQr2EzBwXxYLF8qsN1 -R4zlzXILLdZN8a4bKfrS507/Gi1gDBHzfvbE7HfljeqrAkbKMdKNkbz3iS85SguH -jsM047xUGJg0PAcwBLHUedlSn1xDDcDHW6X8ginpA2Zz1+WAlhNz6XurA1wnjZmS -VcPxopH7QsuFCclqtt14MbBQ6QKBgQDHY3jcAVfQF+yhQ0YyM6GPLN342aTplgyJ -yz4uWVMeXacU4QzqGbf2L2hc9M2L28Xb37RWC3Q/by0vUefiC6qxRt+GJdRsOuQj -2F1uUibeWtAWp249fcfvxjLib276J+Eit18LI0s0mNR3ekK4GcjSe4NwSq5IrU8e -pBreet3dIwKBgQCxVuil4WkGd+I8jC0v5A7zVsR8hYZhlGkdgm45fgHevdMjlP5I -S3PPYxh8hj6O9o9L0k0Yq2nHfdgYujjUCNkQgBuR55iogv6kqsioRKgPE4fnH6/c -eqCy1bZh4tbUyPqqbF65mQfUCzXsEuQXvDSYiku+F0Q2mVuGCUJpmug3yQKBgEd3 -LeCdUp4xlQ0QEd74hpXM3RrO178pmwDgqj7uoU4m/zYKnBhkc3137I406F+SvE5c -1kRpApeh/64QS27IA7xazM9GS+cnDJKUgJiENY5JOoCELo03wiv8/EwQ6NQc6yMI -WrahRdlqVe0lEzjtdP+MacYb3nAKPmubIk5P96nFAoGAFAyrKpFTyXbNYBTw9Rab -TG6q7qkn+YTHN3+k4mo9NGGwZ3pXvmrKMYCIRhLMbqzsmTbFqCPPIxKsrmf8QYLh -xHYQjrCkbZ0wZdcdeV6yFSDsF218nF/12ZPE7CBOQMfZTCKFNWGL97uIVcmR6K5G -ojTkOvaUnwQtSFhNuzyr23I= ------END PRIVATE KEY----- diff --git a/arrow-flight/examples/data/client1.pem b/arrow-flight/examples/data/client1.pem deleted file mode 100644 index bb3b82c40c5a..000000000000 --- a/arrow-flight/examples/data/client1.pem +++ /dev/null @@ -1,19 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIDCTCCAfGgAwIBAgIQYbE9d1Rft5h4ku7FSAvWdzANBgkqhkiG9w0BAQsFADAn -MSUwIwYDVQQDExxUb25pYyBFeGFtcGxlIENsaWVudCBSb290IENBMB4XDTE5MTAx -NDEyMzkzNloXDTI0MTAxMjEyMzkzNlowEjEQMA4GA1UEAxMHY2xpZW50MTCCASIw -DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKKJaubOkQ2wj5wLPhoGkb4+XxY6 -ysHJ9nH9mcl0Jkc7cxNgTqwIuFiyx/TKAAQQbG+aR3hzGZ8J+B/G5Py74PtjnNBK -jKaRtZ1Tr/2Ns1jo6+1z5r3ojUsZc4pE5DDopHc+6oulSoQ4mIGXTeor4cxTSDno -bWffU53seQmwNG+14+rLcjcuCl1xGmzbeyTjq0LNnOHJ+ohDtB8nmpnH3e0D6l/L -5e1v1chRMhYoinX+7J+HwWnwcDRz3MkJJnMk5faPcYfVNiqRWA96AjaWGZ1eE/lD -y92HDLRQlovbxElcDpQCDS09l5Yl7qm7H0mIDzWwjozL4quvDwPKJuQZNNsCAwEA -AaNGMEQwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDAYDVR0TAQH/BAIwADAfBgNVHSME -GDAWgBQV1YOR+Jpl1fbujvWLSBEoRvsDhTANBgkqhkiG9w0BAQsFAAOCAQEAfTPu -KeHXmyVTSCUrYQ1X5Mu7VzfZlRbhoytHOw7bYGgwaFwQj+ZhlPt8nFC22/bEk4IV -AoCOli0WyPIB7Lx52dZ+v9JmYOK6ca2Aa/Dkw8Q+M3XA024FQWq3nZ6qANKC32/9 -Nk+xOcb1Qd/11stpTkRf2Oj7F7K4GnlFbY6iMyNW+RFXGKEbL5QAJDTDPIT8vw1x -oYeNPwmC042uEboCZPNXmuctiK9Wt1TAxjZT/cwdIBGGJ+xrW72abfJGs7bUcJfc -O4r9V0xVv+X0iKWTW0fwd9qjNfiEP1tFCcZb2XsNQPe/DlQZ+h98P073tZEsWI/G -KJrFspGX8vOuSdIeqw== ------END CERTIFICATE----- diff --git a/arrow-flight/examples/data/client_ca.pem b/arrow-flight/examples/data/client_ca.pem deleted file mode 100644 index aa483b931056..000000000000 --- a/arrow-flight/examples/data/client_ca.pem +++ /dev/null @@ -1,19 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIDGzCCAgOgAwIBAgIRAMNWpWRu6Q1txEYUyrkyXKEwDQYJKoZIhvcNAQELBQAw -JzElMCMGA1UEAxMcVG9uaWMgRXhhbXBsZSBDbGllbnQgUm9vdCBDQTAeFw0xOTEw -MTQxMjM5MzZaFw0yOTEwMTExMjM5MzZaMCcxJTAjBgNVBAMTHFRvbmljIEV4YW1w -bGUgQ2xpZW50IFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB -AQCv8Nj4XJbMI0wWUvLbmCf7IEvJFnomodGnDurh8Y5AGMPJ8cGdZC1yo2Lgah+D -IhXdsd72Wp7MhdntJAyPrMCDBfDrFiuj6YHDgt3OhPQSYl7EWG7QjFK3B2sp1K5D -h16G5zfwUKDj9Jp3xuPGuqNFQHL02nwbhtDilqHvaTfOJKVjsFCoU8Z77mfwXSwn -sPXpPB7oOO4mWfAtcwU11rTMiHFSGFlFhgbHULU/y90DcpfRQEpEiBoiK13gkyoP -zHT9WAg3Pelwb6K7c7kJ7mp4axhbf7MkwFhDQIjbBWqus2Eu3b0mf86ALfDbAaNC -wBi8xbNH2vWaDjiwLDY5uMZDAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwICBDAPBgNV -HRMBAf8EBTADAQH/MB0GA1UdDgQWBBQV1YOR+Jpl1fbujvWLSBEoRvsDhTANBgkq -hkiG9w0BAQsFAAOCAQEAaXmM29TYkFUzZUsV7TSonAK560BjxDmbg0GJSUgLEFUJ -wpKqa9UKOSapG45LEeR2wwAmVWDJomJplkuvTD/KOabAbZKyPEfp+VMCaBUnILQF -Cxv5m7kQ3wmPS/rEL8FD809UGowW9cYqnZzUy5i/r263rx0k3OPjkkZN66Mh6+3H -ibNdaxf7ITO0JVb/Ohq9vLC9qf7ujiB1atMdJwkOWsZrLJXLygpx/D0/UhBT4fFH -OlyVOmuR27qaMbPgOs2l8DznkJY/QUfnET8iOQhFgb0Dt/Os4PYFhSDRIrgl5dJ7 -L/zZVQfZYpdxlBHJlDC1/NzVQl/1MgDnSgPGStZKPQ== ------END CERTIFICATE----- diff --git a/arrow-flight/examples/data/gen_certs.sh b/arrow-flight/examples/data/gen_certs.sh new file mode 100644 index 000000000000..7b50652aa62c --- /dev/null +++ b/arrow-flight/examples/data/gen_certs.sh @@ -0,0 +1,30 @@ +#!/bin/sh + +# source: https://users.rust-lang.org/t/use-tokio-tungstenite-with-rustls-instead-of-native-tls-for-secure-websockets/90130 + +make_and_sign() { + # Create unencrypted private key and a CSR (certificate signing request) + openssl req -newkey rsa:2048 -nodes -subj "/C=FI/CN=vahid" -keyout "$1.key" -out "$1.csr" + + # Create self-signed certificate (`$1.pem`) with the private key and CSR + openssl x509 -signkey "$1.key" -in "$1.csr" -req -days 365 -out "$1.pem" + + # Sign the CSR (`$1.pem`) with the root CA certificate and private key + # => this overwrites `$1.pem` because it gets signed + openssl x509 -req -CA ca_root.pem -CAkey ca_root.key -in "$1.csr" -out "$1.pem" -days 1825 -CAcreateserial -extfile localhost.ext +} + +# Create a self-signed root CA +openssl req -x509 -sha256 -nodes -subj "/C=FI/CN=vahid" -days 1825 -newkey rsa:2048 -keyout ca_root.key -out ca_root.pem + +# Create file localhost.ext with the following content: +cat <<'EOF' > localhost.ext +authorityKeyIdentifier=keyid,issuer +basicConstraints=CA:FALSE +subjectAltName = @alt_names +[alt_names] +DNS.1 = localhost +EOF + +make_and_sign client +make_and_sign server diff --git a/arrow-flight/examples/data/server.key b/arrow-flight/examples/data/server.key index 80984ef9000d..e8ea69c18a7f 100644 --- a/arrow-flight/examples/data/server.key +++ b/arrow-flight/examples/data/server.key @@ -1,28 +1,28 @@ -----BEGIN PRIVATE KEY----- -MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDyptbMyYWztgta -t1MXLMzIkaQdeeVbs1Y/qCpAdwZe/Y5ZpbzjGIjCxbB6vNRSnEbYKpytKHPzYfM7 -8d8K8bPvpnqXIiTXFT0JQlw1OHLC1fr4e598GJumAmpMYFrtqv0fbmUFTuQGbHxe -OH2vji0bvr3NKZubMfkEZP3X4sNXXoXIuW2LaS8OMGKoJaeCBvdbszEiSGj/v9Bj -pM0yLTH89NNMX1T+FtTKnuXag5g7pr6lzJj83+MzAGy4nOjseSuUimuiyG90/C5t -A5wC0Qh5RbDnkFYhC44Kxof/i6+jnfateIPNiIIwQV+2f6G/aK1hgjekT10m/eoR -YDTf+e5ZAgMBAAECggEACODt7yRYjhDVLYaTtb9f5t7dYG67Y7WWLFIc6arxQryI -XuNfm/ej2WyeXn9WTYeGWBaHERbv1zH4UnMxNBdP/C7dQXZwXqZaS2JwOUpNeK+X -tUvgtAu6dkKUXSMRcKzXAjVp4N3YHhwOGOx8PNY49FDwZPdmyDD16aFAYIvdle6/ -PSMrj38rB1sbQQdmRob2FjJBSDZ44nsr+/nilrcOFNfNnWv7tQIWYVXNcLfdK/WJ -ZCDFhA8lr/Yon6MEq6ApTj2ZYRRGXPd6UeASJkmTZEUIUbeDcje/MO8cHkREpuRH -wm3pCjR7OdO4vc+/d/QmEvu5ns6wbTauelYnL616YQKBgQD414gJtpCHauNEUlFB -v/R3DzPI5NGp9PAqovOD8nCbI49Mw61gP/ExTIPKiR5uUX/5EL04uspaNkuohXk+ -ys0G5At0NfV7W39lzhvALEaSfleybvYxppbBrc20/q8Gvi/i30NY+1LM3RdtMiEw -hKHjU0SnFhJq0InFg3AO/iCeTQKBgQD5obkbzpOidSsa55aNsUlO2qjiUY9leq9b -irAohIZ8YnuuixYvkOeSeSz1eIrA4tECeAFSgTZxYe1Iz+USru2Xg/0xNte11dJD -rBoH/yMn2gDvBK7xQ6uFMPTeYtKG0vfvpXZYSWZzGntyrHTwFk6UV+xdrt9MBdd1 -XdSn7bwOPQKBgC9VQAko8uDvUf+C8PXiv2uONrl13PPJJY3WpR9qFEVOREnDxszS -HNzVwxPZdTJiykbkCjoqPadfQJDzopZxGQLAifU29lTamKcSx3CMe3gOFDxaovXa -zD5XAxP0hfJwZsdu1G6uj5dsTrJ0oJ+L+wc0pZBqwGIU/L/XOo9/g1DZAoGAUebL -kuH98ik7EUK2VJq8EJERI9/ailLsQb6I+WIxtZGiPqwHhWencpkrNQZtj8dbB9JT -rLwUHrMgZOlAoRafgTyez4zMzS3wJJ/Mkp8U67hM4h7JPwMSvUpIrMYDiJSjIA9L -er/qSw1/Pypx22uWMHmAZWRAgvLPtAQrB0Wqk4kCgYEAr2H1PvfbwZwkSvlMt5o8 -WLnBbxcM3AKglLRbkShxxgiZYdEP71/uOtRMiL26du5XX8evItITN0DsvmXL/kcd -h29LK7LM5uLw7efz0Qxs03G6kEyIHVkacowHi5I5Ul1qI61SoV3yMB1TjIU+bXZt -0ZjC07totO0fqPOLQxonjQg= +MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCJqUDUQQfum3u/ +b9qN1QXvdd2riDljQGIWXe3PGoc8wP1nCkJukxZEJr3Wii8x9v/iJ/ZwkwIV9OEm +y2ER6x0Xh7aYKVF6B2w0R2Q8fWhZx4/kes6mEa6pXutolvqLF1NIUgvpw+yagGPc +Te6RM02AZb3pS/gqqbh3Ayj1q1oiCHZH3p+kpQIMvxumMU+t2Aa7blbr8O2pUOfu +faYUwDg/EPTCsRltiFvGz953uxe1ZbibuI1mjVEpAs4nI3VfKSxChSdlGZtyMsMS +UA5NEQ4MO6di0Xa4cW7uK1/q0yb3M4zl1am4iibCoPb5JsAbSVIqtpc4QqKekNNK +XLYNiYkdAgMBAAECggEADX4c4BD1rZHoyaU1dzRbbhKP5Qmnkk5TrtyK/AMeITrL +O4e6ZisdghWIAtitcojCoNCI65TFHhDP5qUFgSOZyN4g6/4UwdCrbt5WeUVTboVM +WbkduxI9m9U1Xp15thtVqt970nBFJwmRgBzVVr8ACCcwu4aaLthOv798CsQ+Q9qK +qBhqr6QCQMzmG9+RDFN62n0wN5GlQsSrgmX+taP2S2EBqpWS0p4q4xv5UWAPh1Q/ +sHWQ+5W0h6rR+X/NGQ3OY1yvlWAQlmu6HSY5QuRJZdAilJRZOI6Z1kge134oIvHx +TSgzIZ+UEYz8l15ENu55xJxTYkSJLJu3ZtOBlVGo0QKBgQDBlXmJ+n4InHXewCId +e1ai1VA9QQvc6hl19PEQ0m7A4wiqM+PWIixX2s3zjDyHiD3pJWBu9aR4VDST8Mhe +XIncsJRzqXpdSnEHlSsws9GQT13htchO8k31pBBNJsm2VG7CeDr21Ty3wWMYzPL5 +esJPXNjAk9/92L6cMDk+rY8S2QKBgQC2C+IiWxMmwoSfmvfTNdoeBEj+mL82EsXF +gV7JcSjMVXbnPSbq2fnlOTrAe1TCsf8jlcdQHNStLToV7smewfGSMt3LLzEWuH4j +oaLyPPwgfwMZcJShlyh/49KxspnYNh/d0B9cMXysJ7fasPXhPc1icxOAaj317dGT +wpqIYST15QKBgH8ZeewKyDc1KvquYXfD5DUTIxSkoXpRRZg50xD9aPRB3A2L9jpA +w6aHJZOTbqZ54FQ0UyVnKK5McxzzCUtTLLz2PvHVw15/IskcunfGiIBca8JnDPYw +htkR+BX/so6AzxvlvqkThkMLuNmurpT4cZ2T00hVjspnRXbc/qjVYUu5AoGBAJGn +qGL8o7IbaKmbADaJm97wZsbtx++nzX1dKU3bsFzs9JnHn9/AT+VLiOqAwyyT5iO+ +rx42MyPsT9FEoSTY4EOtVzA+rfQT4Tj5FrrieIg3l28/WGyB2PGagvWShO0tQQnk +f3LwVWQY002y0MhK/o2KrUvNtY2Tnl+vEJ2VvFDRAoGBALkegS4yvT1MqB9a/WLk +ROXQ94CJTDM751Lp6OnyJy9kVWlQvFQXL7FN836LJN22JFCANnPUrbVXht3hXadb +3KHe19MouNEMG+CZK9cuk8SKIlt18Kvnv3fVxhksaQAYJOcPMFbvwiv8UoochR5u +UuUQ9LfFpj9eL/gsgjICQTiy -----END PRIVATE KEY----- diff --git a/arrow-flight/examples/data/server.pem b/arrow-flight/examples/data/server.pem index 4cc97bcf4b6d..d675054b4e4f 100644 --- a/arrow-flight/examples/data/server.pem +++ b/arrow-flight/examples/data/server.pem @@ -1,27 +1,19 @@ -----BEGIN CERTIFICATE----- -MIIEmDCCAwCgAwIBAgIQVEJFCgU/CZk9JEwTucWPpzANBgkqhkiG9w0BAQsFADCB -hTEeMBwGA1UEChMVbWtjZXJ0IGRldmVsb3BtZW50IENBMS0wKwYDVQQLDCRsdWNp -b0BMdWNpb3MtV29yay1NQlAgKEx1Y2lvIEZyYW5jbykxNDAyBgNVBAMMK21rY2Vy -dCBsdWNpb0BMdWNpb3MtV29yay1NQlAgKEx1Y2lvIEZyYW5jbykwHhcNMTkwNjAx -MDAwMDAwWhcNMjkwOTI5MjMzNTM0WjBYMScwJQYDVQQKEx5ta2NlcnQgZGV2ZWxv -cG1lbnQgY2VydGlmaWNhdGUxLTArBgNVBAsMJGx1Y2lvQEx1Y2lvcy1Xb3JrLU1C -UCAoTHVjaW8gRnJhbmNvKTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB -APKm1szJhbO2C1q3UxcszMiRpB155VuzVj+oKkB3Bl79jlmlvOMYiMLFsHq81FKc -RtgqnK0oc/Nh8zvx3wrxs++mepciJNcVPQlCXDU4csLV+vh7n3wYm6YCakxgWu2q -/R9uZQVO5AZsfF44fa+OLRu+vc0pm5sx+QRk/dfiw1dehci5bYtpLw4wYqglp4IG -91uzMSJIaP+/0GOkzTItMfz000xfVP4W1Mqe5dqDmDumvqXMmPzf4zMAbLic6Ox5 -K5SKa6LIb3T8Lm0DnALRCHlFsOeQViELjgrGh/+Lr6Od9q14g82IgjBBX7Z/ob9o -rWGCN6RPXSb96hFgNN/57lkCAwEAAaOBrzCBrDAOBgNVHQ8BAf8EBAMCBaAwEwYD -VR0lBAwwCgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADAfBgNVHSMEGDAWgBQdvlE4 -Bdcsjc9oaxjDCRu5FiuZkzBWBgNVHREETzBNggtleGFtcGxlLmNvbYINKi5leGFt -cGxlLmNvbYIMZXhhbXBsZS50ZXN0gglsb2NhbGhvc3SHBH8AAAGHEAAAAAAAAAAA -AAAAAAAAAAEwDQYJKoZIhvcNAQELBQADggGBAKb2TJ8l+e1eraNwZWizLw5fccAf -y59J1JAWdLxZyAI/bkiTlVO3DQoPZpw7XwLhefCvILkwKAL4TtIGGVC9yTb5Q5eg -rqGO3FC0yg1fn65Kf1VpVxxUVyoiM5PQ4pFJb4AicAv88rCOLD9FFuE0PKOKU/dm -Tw0WgPStoh9wsJ1RXUuTJYZs1nd1kMBlfv9NbLilnL+cR2sLktS54X5XagsBYVlf -oapRb0JtABOoQhX3U8QMq8UF8yzceRHNTN9yfLOUrW26s9nKtlWVniNhw1uPxZw9 -RHM7w9/4+a9LXtEDYg4IP/1mm0ywBoUqy1O6hA73uId+Yi/kFBks/GyYaGjKgYcO -23B75tkPGYEdGuGZYLzZNHbXg4V0UxFQG3KA1pUiSnD3bN2Rxs+CMpzORnOeK3xi -EooKgAPYsehItoQOMPpccI2xHdSAMWtwUgOKrefUQujkx2Op+KFlspF0+WJ6AZEe -2D4hyWaEZsvvILXapwqHDCuN3/jSUlTIqUoE1w== +MIIDKzCCAhOgAwIBAgIURGJB6QyNfnGJiavpS6DB4+o4YPowDQYJKoZIhvcNAQEL +BQAwHTELMAkGA1UEBhMCRkkxDjAMBgNVBAMMBXZhaGlkMB4XDTI0MTAxODE4MTcy +NVoXDTI5MTAxNzE4MTcyNVowHTELMAkGA1UEBhMCRkkxDjAMBgNVBAMMBXZhaGlk +MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAialA1EEH7pt7v2/ajdUF +73Xdq4g5Y0BiFl3tzxqHPMD9ZwpCbpMWRCa91oovMfb/4if2cJMCFfThJsthEesd +F4e2mClRegdsNEdkPH1oWceP5HrOphGuqV7raJb6ixdTSFIL6cPsmoBj3E3ukTNN +gGW96Uv4Kqm4dwMo9ataIgh2R96fpKUCDL8bpjFPrdgGu25W6/DtqVDn7n2mFMA4 +PxD0wrEZbYhbxs/ed7sXtWW4m7iNZo1RKQLOJyN1XyksQoUnZRmbcjLDElAOTREO +DDunYtF2uHFu7itf6tMm9zOM5dWpuIomwqD2+SbAG0lSKraXOEKinpDTSly2DYmJ +HQIDAQABo2MwYTAfBgNVHSMEGDAWgBS7apCkF71w6jQed0hH1W+lsImfITAJBgNV +HRMEAjAAMBQGA1UdEQQNMAuCCWxvY2FsaG9zdDAdBgNVHQ4EFgQUTVRUyJuulyjb +PNY60pZnbn3YZM0wDQYJKoZIhvcNAQELBQADggEBAFjMnkZ8uh53x/vvACI/QiVG +u8+2bzUllXDp5cS4Fb/AxQABvNROgfrfxcUkcjoRoyim2V8KyYQmmmIGrBXpevMs +/gIPKo5haj5Ijnttz+9IbRY0h9XqEEevZbuM8o7zCpxxA305qbrmGkApRsRbiuZP +JglsBdR6z9HhURfhfQbiaxLhu1jmdWk/XZyghQDXJpzTDE8k1kDjBSHmklQ5JQ2J +o2NmXD78RQ5ZIRu9pmH47rs7CeTy6CjRlHK3lGOb4PfE+eHGPUXbwOl+iP6WuHG6 +K5erpWgHWvPXH4MMTNOgaJN7HNLyxVbC9W1l0JpqN8UmHwj6bXC262Soz+STbfE= -----END CERTIFICATE----- diff --git a/arrow-flight/examples/flight_sql_server.rs b/arrow-flight/examples/flight_sql_server.rs index dd3a3943dd95..8c6c6e710bae 100644 --- a/arrow-flight/examples/flight_sql_server.rs +++ b/arrow-flight/examples/flight_sql_server.rs @@ -797,6 +797,7 @@ mod tests { use std::fs; use std::future::Future; use std::net::SocketAddr; + use std::path::PathBuf; use std::time::Duration; use tempfile::NamedTempFile; use tokio::net::{TcpListener, UnixListener, UnixStream}; @@ -901,13 +902,15 @@ mod tests { F: FnOnce(FlightSqlServiceClient) -> C, C: Future, { - let cert = std::fs::read_to_string("examples/data/server.pem").unwrap(); - let key = std::fs::read_to_string("examples/data/server.key").unwrap(); - let client_ca = std::fs::read_to_string("examples/data/client_ca.pem").unwrap(); + let cert_dir = PathBuf::from("examples/data"); + + let cert = std::fs::read_to_string(cert_dir.join("server.pem")).unwrap(); + let key = std::fs::read_to_string(cert_dir.join("server.key")).unwrap(); + let ca_root = std::fs::read_to_string(cert_dir.join("ca_root.pem")).unwrap(); let tls_config = ServerTlsConfig::new() .identity(Identity::from_pem(&cert, &key)) - .client_ca_root(Certificate::from_pem(&client_ca)); + .client_ca_root(Certificate::from_pem(&ca_root)); let (incoming, addr) = bind_tcp().await; let uri = format!("https://{}:{}", addr.ip(), addr.port()); @@ -920,14 +923,13 @@ mod tests { .add_service(svc) .serve_with_incoming(incoming); - let request_future = async { - let cert = std::fs::read_to_string("examples/data/client1.pem").unwrap(); - let key = std::fs::read_to_string("examples/data/client1.key").unwrap(); - let server_ca = std::fs::read_to_string("examples/data/ca.pem").unwrap(); + let request_future = async move { + let cert = std::fs::read_to_string(cert_dir.join("client.pem")).unwrap(); + let key = std::fs::read_to_string(cert_dir.join("client.key")).unwrap(); let tls_config = ClientTlsConfig::new() .domain_name("localhost") - .ca_certificate(Certificate::from_pem(&server_ca)) + .ca_certificate(Certificate::from_pem(&ca_root)) .identity(Identity::from_pem(cert, key)); let endpoint = endpoint(uri).unwrap().tls_config(tls_config).unwrap();