<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SpringSecurity on SivaLabs</title><link>https://www.sivalabs.in/tags/springsecurity/</link><description>Recent content in SpringSecurity on SivaLabs</description><generator>Hugo</generator><language>en</language><lastBuildDate>Wed, 02 Sep 2026 15:01:28 +0530</lastBuildDate><atom:link href="https://www.sivalabs.in/tags/springsecurity/rss.xml" rel="self" type="application/rss+xml"/><item><title>Spring Security OAuth 2 Tutorial - 10 : Service to Service Communication using Client Credentials Flow</title><link>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-service-to-service-communication-using-client-credentials-flow/</link><pubDate>Mon, 09 Oct 2023 00:30:00 +0000</pubDate><guid>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-service-to-service-communication-using-client-credentials-flow/</guid><description>&lt;p&gt;In this article, we will learn how to implement &lt;strong&gt;Service to Service Communication&lt;/strong&gt; using &lt;strong&gt;Client Credentials Flow&lt;/strong&gt;.
We will create the &lt;strong&gt;archival-service&lt;/strong&gt; in which we will use a scheduler job to invoke the &lt;strong&gt;messages-service&lt;/strong&gt; APIs to archive the messages.
For implementing this, we will use &lt;strong&gt;Client Credentials Flow&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Spring Security OAuth 2 Tutorial - 9 : Invoking Secured Resource Server APIs from Client Application</title><link>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-integrating-client-and-resource-server/</link><pubDate>Fri, 06 Oct 2023 00:30:00 +0000</pubDate><guid>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-integrating-client-and-resource-server/</guid><description>&lt;p&gt;In the previous articles, we have created &lt;strong&gt;messages-webapp&lt;/strong&gt; and &lt;strong&gt;messages-service&lt;/strong&gt; and invoked API endpoints using Postman.
In this article, we will learn how to invoke the secured &lt;strong&gt;messages-service&lt;/strong&gt; API endpoints from the Client application &lt;strong&gt;messages-webapp&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Spring Security OAuth 2 Tutorial - 8 : Securing Resource Server</title><link>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-securing-resource-server/</link><pubDate>Mon, 02 Oct 2023 00:30:00 +0000</pubDate><guid>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-securing-resource-server/</guid><description>&lt;p&gt;In the previous article, we have created &lt;strong&gt;messages-webapp&lt;/strong&gt; and secured it with &lt;strong&gt;Spring Security OAuth 2.0&lt;/strong&gt; using Authorization Code Flow.
In this article, we will create &lt;strong&gt;messages-service&lt;/strong&gt;, which is a Spring Boot Resource Server, and secure it with Spring Security OAuth 2.0.&lt;/p&gt;</description></item><item><title>Spring Security OAuth 2 Tutorial - 7 : Securing Spring MVC Client Application</title><link>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-securing-springmvc-client-application/</link><pubDate>Thu, 28 Sep 2023 03:30:00 +0000</pubDate><guid>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-securing-springmvc-client-application/</guid><description>&lt;p&gt;In this article, we will create &lt;strong&gt;messages-webapp&lt;/strong&gt; which is a &lt;strong&gt;Spring MVC + Thymeleaf&lt;/strong&gt; web application
and secure it with &lt;strong&gt;Spring Security OAuth 2.0&lt;/strong&gt; using &lt;strong&gt;Keycloak&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Spring Security OAuth 2 Tutorial - 6 : Microservices Sample Project Setup</title><link>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-microservices-project-setup/</link><pubDate>Thu, 28 Sep 2023 00:30:00 +0000</pubDate><guid>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-microservices-project-setup/</guid><description>&lt;p&gt;In the previous articles, we have learned about various OAuth 2.0 / OpenID Connect flows using web browser, cURL and Postman.
Now it&amp;rsquo;s time to put what we have learned into practice. What better way to do that than to build a sample project?&lt;/p&gt;</description></item><item><title>Spring Security OAuth 2 Tutorial - 5 : Implicit &amp; Resource Owner Password Credentials Flows</title><link>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-implicit-and-resource-owner-password-credentials-flow/</link><pubDate>Wed, 27 Sep 2023 03:30:00 +0000</pubDate><guid>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-implicit-and-resource-owner-password-credentials-flow/</guid><description>&lt;p&gt;In the &lt;a href="https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-authorization-code-flow-with-pkce/"&gt;Part 4: OAuth 2.0 Authorization Code Flow with PKCE&lt;/a&gt;,
we learned how to acquire &lt;strong&gt;access_token&lt;/strong&gt; using &lt;strong&gt;Authorization Code Flow with PKCE&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;In this article, we will explore how to use &lt;strong&gt;Implicit Flow&lt;/strong&gt; and &lt;strong&gt;Resource Owner Password Credentials Flow&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Spring Security OAuth 2 Tutorial - 4 : Authorization Code Flow with PKCE</title><link>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-authorization-code-flow-with-pkce/</link><pubDate>Wed, 27 Sep 2023 00:30:00 +0000</pubDate><guid>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-authorization-code-flow-with-pkce/</guid><description>&lt;p&gt;In the &lt;a href="https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-client-credentials-flow/"&gt;Part 3: OAuth 2.0 Client Credentials Flow&lt;/a&gt;,
we learned how to acquire &lt;strong&gt;access_token&lt;/strong&gt; using &lt;strong&gt;Client Credentials Flow&lt;/strong&gt;.
In this article, we will explore how to use &lt;strong&gt;Authorization Code Flow with PKCE&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Spring Security OAuth 2 Tutorial - 3 : Client Credentials Flow</title><link>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-client-credentials-flow/</link><pubDate>Mon, 25 Sep 2023 00:30:00 +0000</pubDate><guid>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-client-credentials-flow/</guid><description>&lt;p&gt;In the &lt;a href="https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-authorization-code-flow/"&gt;Part 2: OAuth 2.0 Authorization Code Flow&lt;/a&gt;,
we learned how to authenticate a user using &lt;strong&gt;Authorization Code Flow&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;In this article, we will explore how to use &lt;strong&gt;Client Credentials Flow&lt;/strong&gt; that is typically used for &lt;strong&gt;Service-to-Service&lt;/strong&gt;
communication without any user (Resource Owner) context.&lt;/p&gt;</description></item><item><title>Spring Security OAuth 2 Tutorial - 2 : Authorization Code Flow</title><link>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-authorization-code-flow/</link><pubDate>Sun, 24 Sep 2023 00:30:00 +0000</pubDate><guid>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-authorization-code-flow/</guid><description>&lt;p&gt;In the &lt;a href="https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-introduction/"&gt;Part 1: Getting familiar with OAuth 2 concepts&lt;/a&gt;, we learned how to set up Keycloak, created a realm, a client with Standard flow enabled and a user.
In this Part 2, you will learn how to authenticate a user using &lt;strong&gt;Authorization Code Flow&lt;/strong&gt;.&lt;/p&gt;</description></item><item><title>Spring Security OAuth 2 Tutorial - 1 : Getting familiar with OAuth 2 concepts</title><link>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-introduction/</link><pubDate>Fri, 22 Sep 2023 00:30:00 +0000</pubDate><guid>https://www.sivalabs.in/blog/spring-security-oauth2-tutorial-introduction/</guid><description>&lt;p&gt;Security is a complex topic to understand in-depth. In addition to that, implementing security for complex microservices based systems
using &lt;a href="https://datatracker.ietf.org/doc/html/rfc6749"&gt;OAuth 2.0&lt;/a&gt; and
&lt;a href="https://openid.net/specs/openid-connect-core-1_0.html"&gt;OpenID Connect&lt;/a&gt; specs is even harder.
Frameworks and libraries, like &lt;a href="https://spring.io/projects/spring-security"&gt;Spring Security&lt;/a&gt;, help to reduce the complexity,
but still there is a steep learning curve to understand how to properly implement security.&lt;/p&gt;</description></item></channel></rss>