<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	
	>
<channel>
	<title>
	Komentarze do: Spring Security &#8211; uwierzytelnienie przy pomocy jsona	</title>
	<atom:link href="https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/feed/" rel="self" type="application/rss+xml" />
	<link>https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/</link>
	<description>Blog o programowaniu w Javie</description>
	<lastBuildDate>Fri, 04 Aug 2023 17:07:09 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>
	<item>
		<title>
		Autor: Piotr		</title>
		<link>https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-4775</link>

		<dc:creator><![CDATA[Piotr]]></dc:creator>
		<pubDate>Fri, 30 Sep 2022 14:20:27 +0000</pubDate>
		<guid isPermaLink="false">http://nullpointerexception.pl/?p=1130#comment-4775</guid>

					<description><![CDATA[W odpowiedzi do &lt;a href=&quot;https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-4774&quot;&gt;Mateusz Dąbrowski&lt;/a&gt;.

Rozumiem, dzięki za odpowiedz :) W takim razie nie zrozumiałem zamiaru :)]]></description>
			<content:encoded><![CDATA[<p>W odpowiedzi do <a href="https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-4774">Mateusz Dąbrowski</a>.</p>
<p>Rozumiem, dzięki za odpowiedz 🙂 W takim razie nie zrozumiałem zamiaru 🙂</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Autor: Mateusz Dąbrowski		</title>
		<link>https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-4774</link>

		<dc:creator><![CDATA[Mateusz Dąbrowski]]></dc:creator>
		<pubDate>Fri, 30 Sep 2022 14:14:07 +0000</pubDate>
		<guid isPermaLink="false">http://nullpointerexception.pl/?p=1130#comment-4774</guid>

					<description><![CDATA[W odpowiedzi do &lt;a href=&quot;https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-4773&quot;&gt;Piotr&lt;/a&gt;.

Cześć Piotr dzięki za komentarz, ale nie do końca rozumiem twoje uwagi. Ja po prostu dostosowuje Spring Security do swoich potrzeb.

&lt;blockquote&gt;&quot;Czyli cała konfiguracja domyślna, jak i nie domyślna, która tworzymy na HttpSecurity leci w czarną dziurę.&quot;&lt;/blockquote&gt;
No ale ja nie mogę polegać na domyślnej konfiguracji, bo właśnie mi ona nie odpowiada. Dlatego ją zmieniam.

Generalnie artykuł jest częścią serii. W kolejnym opisuje jak przerobić logowanie na tokena (i tam nie ma sesji http, wiec ochrona sesji nie jest potrzebna). W tej części przygotowuje wszystko pod tym kontem, wiec być może zbyt wiele niechcący wyciąłem. 

Zawsze możesz włączyć sobie potrzebne rzeczy w konfiguracji tak, żeby wszystko dostosować do swoich potrzeb. Nie jest tak, że ja coś popsułem w ten sposób, po prostu musisz to inaczej skonfigurować.]]></description>
			<content:encoded><![CDATA[<p>W odpowiedzi do <a href="https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-4773">Piotr</a>.</p>
<p>Cześć Piotr dzięki za komentarz, ale nie do końca rozumiem twoje uwagi. Ja po prostu dostosowuje Spring Security do swoich potrzeb.</p>
<blockquote><p>&#8222;Czyli cała konfiguracja domyślna, jak i nie domyślna, która tworzymy na HttpSecurity leci w czarną dziurę.&#8221;</p></blockquote>
<p>No ale ja nie mogę polegać na domyślnej konfiguracji, bo właśnie mi ona nie odpowiada. Dlatego ją zmieniam.</p>
<p>Generalnie artykuł jest częścią serii. W kolejnym opisuje jak przerobić logowanie na tokena (i tam nie ma sesji http, wiec ochrona sesji nie jest potrzebna). W tej części przygotowuje wszystko pod tym kontem, wiec być może zbyt wiele niechcący wyciąłem. </p>
<p>Zawsze możesz włączyć sobie potrzebne rzeczy w konfiguracji tak, żeby wszystko dostosować do swoich potrzeb. Nie jest tak, że ja coś popsułem w ten sposób, po prostu musisz to inaczej skonfigurować.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Autor: Piotr		</title>
		<link>https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-4773</link>

		<dc:creator><![CDATA[Piotr]]></dc:creator>
		<pubDate>Fri, 30 Sep 2022 13:36:58 +0000</pubDate>
		<guid isPermaLink="false">http://nullpointerexception.pl/?p=1130#comment-4773</guid>

					<description><![CDATA[Cześć Mateusz,
Trafiłem na ten wątek ponieważ potrzebowałem dokładnie tej funkcjonalności.
Niestety podczas implementacji trafiłem na kilka problemów wynikających z tego. Cała konfiguracja + trochę benefitów jakie spring security daje nam out of box tracimy, filtr który zdefiniujemy w ten sposób jest goły. Czyli cała konfiguracja domyślna, jak i nie domyślna, która tworzymy na HttpSecurity leci w czarną dziurę. I tak, ochrona przed SessionFixationAttack znika, możliwość zmiany login URL na jakiś własny, funkcjonalność remember-me i wiele innych.]]></description>
			<content:encoded><![CDATA[<p>Cześć Mateusz,<br />
Trafiłem na ten wątek ponieważ potrzebowałem dokładnie tej funkcjonalności.<br />
Niestety podczas implementacji trafiłem na kilka problemów wynikających z tego. Cała konfiguracja + trochę benefitów jakie spring security daje nam out of box tracimy, filtr który zdefiniujemy w ten sposób jest goły. Czyli cała konfiguracja domyślna, jak i nie domyślna, która tworzymy na HttpSecurity leci w czarną dziurę. I tak, ochrona przed SessionFixationAttack znika, możliwość zmiany login URL na jakiś własny, funkcjonalność remember-me i wiele innych.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Autor: Mateusz Dąbrowski		</title>
		<link>https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-3825</link>

		<dc:creator><![CDATA[Mateusz Dąbrowski]]></dc:creator>
		<pubDate>Tue, 15 Feb 2022 22:55:25 +0000</pubDate>
		<guid isPermaLink="false">http://nullpointerexception.pl/?p=1130#comment-3825</guid>

					<description><![CDATA[W odpowiedzi do &lt;a href=&quot;https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-3824&quot;&gt;Damian&lt;/a&gt;.

Dzięki za miłe słowa Damian]]></description>
			<content:encoded><![CDATA[<p>W odpowiedzi do <a href="https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-3824">Damian</a>.</p>
<p>Dzięki za miłe słowa Damian</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Autor: Damian		</title>
		<link>https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-3824</link>

		<dc:creator><![CDATA[Damian]]></dc:creator>
		<pubDate>Tue, 15 Feb 2022 22:00:23 +0000</pubDate>
		<guid isPermaLink="false">http://nullpointerexception.pl/?p=1130#comment-3824</guid>

					<description><![CDATA[Jesteś mistrz! Chodzi mi o to, że to co pokazujesz i tłumaczysz jest celnie &quot;dobrane&quot;, skrojone, wypunktowane. Jak celny strzał w 10. Pokazujesz aktualne, nie rzadko, nie trywialne zagadnienia, dostosowane i pokazane na przykładzie &quot;na czasie&quot;. W internecie gdzie często pokazuje się albo mnóstwo po trosze, albo w ogóle za mało to ten blog jest oazą nadziei.]]></description>
			<content:encoded><![CDATA[<p>Jesteś mistrz! Chodzi mi o to, że to co pokazujesz i tłumaczysz jest celnie &#8222;dobrane&#8221;, skrojone, wypunktowane. Jak celny strzał w 10. Pokazujesz aktualne, nie rzadko, nie trywialne zagadnienia, dostosowane i pokazane na przykładzie &#8222;na czasie&#8221;. W internecie gdzie często pokazuje się albo mnóstwo po trosze, albo w ogóle za mało to ten blog jest oazą nadziei.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Autor: Krzysiek		</title>
		<link>https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-2946</link>

		<dc:creator><![CDATA[Krzysiek]]></dc:creator>
		<pubDate>Sun, 25 Apr 2021 15:27:53 +0000</pubDate>
		<guid isPermaLink="false">http://nullpointerexception.pl/?p=1130#comment-2946</guid>

					<description><![CDATA[W odpowiedzi do &lt;a href=&quot;https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-1868&quot;&gt;Mateusz Dąbrowski&lt;/a&gt;.

Szukając podobnych rozwiązań do frontu znalazłem dwa ciekawe opisy:
https://spring.io/guides/tutorials/spring-security-and-angular-js/#_the_login_page_angular_js_and_spring_security_part_ii
i 
https://blog.angular-university.io/angular-jwt-authentication/

Niestety, chociaż każdy z nich jest dobry w tym co opisuje, to nie do końca rozwiązują ten sam problem. Aktualnie implementuję jeden projekt, gdzie chcę właśnie wykorzystać wszystkie 3 rozwiązania łącznie.]]></description>
			<content:encoded><![CDATA[<p>W odpowiedzi do <a href="https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-1868">Mateusz Dąbrowski</a>.</p>
<p>Szukając podobnych rozwiązań do frontu znalazłem dwa ciekawe opisy:<br />
<a href="https://spring.io/guides/tutorials/spring-security-and-angular-js/#_the_login_page_angular_js_and_spring_security_part_ii" rel="nofollow ugc">https://spring.io/guides/tutorials/spring-security-and-angular-js/#_the_login_page_angular_js_and_spring_security_part_ii</a><br />
i<br />
<a href="https://blog.angular-university.io/angular-jwt-authentication/" rel="nofollow ugc">https://blog.angular-university.io/angular-jwt-authentication/</a></p>
<p>Niestety, chociaż każdy z nich jest dobry w tym co opisuje, to nie do końca rozwiązują ten sam problem. Aktualnie implementuję jeden projekt, gdzie chcę właśnie wykorzystać wszystkie 3 rozwiązania łącznie.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Autor: Mateusz Dąbrowski		</title>
		<link>https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-1868</link>

		<dc:creator><![CDATA[Mateusz Dąbrowski]]></dc:creator>
		<pubDate>Mon, 06 Jul 2020 10:51:04 +0000</pubDate>
		<guid isPermaLink="false">http://nullpointerexception.pl/?p=1130#comment-1868</guid>

					<description><![CDATA[W odpowiedzi do &lt;a href=&quot;https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-1864&quot;&gt;wiciorny&lt;/a&gt;.

Implementacja logowania tylko po stronie backendu nie zawsze wystarczy. Jeśli backend korzysta z sesji http, to obsługą ciasteczek zajmie się przeglądarka i w zasadzie nie wiele musisz robić poza obsługą samego formularza logowania i przekierowywanie użytkownika na niego jeśli nie jest zalogowany. 

Jeśli chcesz korzystać z tokena (co opisałem w kolejnym artykule), to musisz już zając się obsługą tego tokena w aplikacji React/Angular (w Angularze robi się to zwykle przez interceptory). Tokena możesz zapisać np. w local storage i wysyłać z każdym requestem do serwera w nagłówku Authorize. 

Nie znam żadnych ciekawych tutoriali frontendowych na ten temat.]]></description>
			<content:encoded><![CDATA[<p>W odpowiedzi do <a href="https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-1864">wiciorny</a>.</p>
<p>Implementacja logowania tylko po stronie backendu nie zawsze wystarczy. Jeśli backend korzysta z sesji http, to obsługą ciasteczek zajmie się przeglądarka i w zasadzie nie wiele musisz robić poza obsługą samego formularza logowania i przekierowywanie użytkownika na niego jeśli nie jest zalogowany. </p>
<p>Jeśli chcesz korzystać z tokena (co opisałem w kolejnym artykule), to musisz już zając się obsługą tego tokena w aplikacji React/Angular (w Angularze robi się to zwykle przez interceptory). Tokena możesz zapisać np. w local storage i wysyłać z każdym requestem do serwera w nagłówku Authorize. </p>
<p>Nie znam żadnych ciekawych tutoriali frontendowych na ten temat.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Autor: wiciorny		</title>
		<link>https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-1864</link>

		<dc:creator><![CDATA[wiciorny]]></dc:creator>
		<pubDate>Sun, 05 Jul 2020 15:58:07 +0000</pubDate>
		<guid isPermaLink="false">http://nullpointerexception.pl/?p=1130#comment-1864</guid>

					<description><![CDATA[Hej zastanawia mnie jedna rzecz,  jak powiązać  sceurity z JWT - przy aplikacji  z react/angularem ? 
Tzn. mam oczywiście core - w oparciu o CRUD i springboot, ale mam też warstwę UI - opartą o angular lub react js, zastanawiam się czy implementacja autoryzacji wystarcza po stronie serwera? Chyba nie bo np chcąc tworzyć componenty - w react musze jakoś wpleść logowanie etc również w frontend? 
Jakiś tutorial znacie dobry do tego ? Pozdrawiam]]></description>
			<content:encoded><![CDATA[<p>Hej zastanawia mnie jedna rzecz,  jak powiązać  sceurity z JWT &#8211; przy aplikacji  z react/angularem ?<br />
Tzn. mam oczywiście core &#8211; w oparciu o CRUD i springboot, ale mam też warstwę UI &#8211; opartą o angular lub react js, zastanawiam się czy implementacja autoryzacji wystarcza po stronie serwera? Chyba nie bo np chcąc tworzyć componenty &#8211; w react musze jakoś wpleść logowanie etc również w frontend?<br />
Jakiś tutorial znacie dobry do tego ? Pozdrawiam</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Autor: Mateusz Dąbrowski		</title>
		<link>https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-239</link>

		<dc:creator><![CDATA[Mateusz Dąbrowski]]></dc:creator>
		<pubDate>Thu, 31 Oct 2019 10:12:00 +0000</pubDate>
		<guid isPermaLink="false">http://nullpointerexception.pl/?p=1130#comment-239</guid>

					<description><![CDATA[W odpowiedzi do &lt;a href=&quot;https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-238&quot;&gt;PB2&lt;/a&gt;.

Na githubie jest przykładowy kod (na końcu artykułu jest link). Zajrzyj do przykładu, może gdzieś jest jakiś mały błąd.

Edit: Był mały błąd, zamiast super.authenticationManagerBean() trzeba użyć super.authenticationManager(). Poprawiłem w tekście.]]></description>
			<content:encoded><![CDATA[<p>W odpowiedzi do <a href="https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-238">PB2</a>.</p>
<p>Na githubie jest przykładowy kod (na końcu artykułu jest link). Zajrzyj do przykładu, może gdzieś jest jakiś mały błąd.</p>
<p>Edit: Był mały błąd, zamiast super.authenticationManagerBean() trzeba użyć super.authenticationManager(). Poprawiłem w tekście.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		Autor: PB2		</title>
		<link>https://nullpointerexception.pl/spring-security-uwierzytelnienie-przy-pomocy-jsona/#comment-238</link>

		<dc:creator><![CDATA[PB2]]></dc:creator>
		<pubDate>Wed, 30 Oct 2019 16:19:01 +0000</pubDate>
		<guid isPermaLink="false">http://nullpointerexception.pl/?p=1130#comment-238</guid>

					<description><![CDATA[Dodałem z artykułu klasę SecurityConfig  z metodą konfigurującą w pamięci bazę użytkowników. Coś mi to nie działa. Dalej muszę wpisywać hasło wygenerowane przez aplikacje w momencie startu. A powinno logować z hasłem password.]]></description>
			<content:encoded><![CDATA[<p>Dodałem z artykułu klasę SecurityConfig  z metodą konfigurującą w pamięci bazę użytkowników. Coś mi to nie działa. Dalej muszę wpisywać hasło wygenerowane przez aplikacje w momencie startu. A powinno logować z hasłem password.</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
