mutual-tls-ssl

API security tutorial

A tutorial project demonstrating a secure API setup with TLS/SSL authentication for Java-based web servers and clients.

🔐 Tutorial of setting up Security for your API with one way authentication with TLS/SSL and mutual authentication for a java based web server and a client with both Spring Boot. Different clients are provided such as Apache HttpClient, OkHttp, Spring RestTemplate, Spring WebFlux WebClient Jetty and Netty, the old and the new JDK HttpClient, the old and the new Jersey Client, Google HttpClient, Unirest, Retrofit, Feign, Methanol, vertx, Scala client Finagle, Featherbed, Dispatch Reboot, AsyncHttpClient, Sttp, Akka, Requests Scala, Http4s Blaze, Kotlin client Fuel, http4k, Kohttp and ktor. Also other server examples are available such as jersey with grizzly. Also gRPC, WebSocket and ElasticSearch examples are included

GitHub

575 stars
19 watching
123 forks
Language: Java
last commit: about 1 month ago
Linked from 2 awesome lists

certificatecertificate-authoritycertificate-signing-requestencryptionhttpsjavakeystorekeytoolkotlinmutual-authenticationmutual-tlsopensslscalasecurityserverspring-bootssltlstruststoretwo-way-ssl-authentication

Backlinks from these awesome lists:

Related projects:

Repository Description Stars
hakky54/sslcontext-kickstart A lightweight library for configuring secure HTTP communications using SSL/TLS certificates and key management. 506
refraction-networking/utls A fork of the Go standard TLS library providing low-level access to the ClientHello message with fingerprinting resistance features. 1,736
maxtoyberman/react-native-ssl-pinning Provides SSL pinning and cookie handling for secure networking in mobile apps using OkHttp 3 on Android and AFNetworking on iOS. 349
kitura/bluesslservice An SSL/TLS add-in framework for secure networking in Swift 97
gokul595/api_guard Provides JWT-based authentication with token refreshing and blacklisting for Rails APIs 276
droe/sslsplit Tools for intercepting and analyzing SSL/TLS encrypted network connections 1,767
shariltumin/tscp An implementation of an endpoint-to-endpoint encryption protocol based on Diffie-Hellman-Merkle and TLS1.3 for secure communication between resource-constrained microcontrollers. 2
marianobarrios/tls-channel A Java library that enables easy-to-use TLS encryption for secure networking 196
jaliss/securesocial Provides authentication APIs for Play Framework applications using OAuth and OpenID protocols 1,187
triska/letswicrypt An open-source implementation of HTTPS servers using Prolog, a programming language well-suited for web applications. 36
haskell-tls/hs-tls A Haskell implementation of the Transport Layer Security protocol for secure communication between servers and clients. 405
gitguardian/apisecuritybestpractices Resources to help developers keep sensitive information secret and mitigate potential security breaches 1,923
frasertweedale/hs-jose Haskell implementation of JSON Object Signing and Encryption & JWT (JSON Web Token) 124
tfausak/wuss A library for creating secure WebSocket clients in Haskell. 69
hakky54/certificate-ripper A tool to extract and format SSL/TLS certificates from servers 718