<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	
	xmlns:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	>

<channel>
	<title>Skoruba - Inero Software - Rozwiązania IT i Konsulting</title>
	<atom:link href="https://inero-software.com/pl/tag/skoruba-pl/feed/" rel="self" type="application/rss+xml" />
	<link>https://inero-software.com/pl/tag/skoruba-pl/</link>
	<description>Tworzymy cyfrowe innowacje</description>
	<lastBuildDate>Fri, 25 Mar 2022 12:39:57 +0000</lastBuildDate>
	<language>pl-PL</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.1</generator>

<image>
	<url>https://inero-software.com/wp-content/uploads/2018/11/inero-logo-favicon.png</url>
	<title>Skoruba - Inero Software - Rozwiązania IT i Konsulting</title>
	<link>https://inero-software.com/pl/tag/skoruba-pl/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">153509928</site>	<item>
		<title>Skoruba dla Identity Server &#8211; przegląd modułu autoryzacyjnego dla Aplikacji .NET</title>
		<link>https://inero-software.com/pl/skoruba-dla-identity-server/</link>
		
		<dc:creator><![CDATA[Andrzej Chybicki]]></dc:creator>
		<pubDate>Mon, 07 Feb 2022 11:11:36 +0000</pubDate>
				<category><![CDATA[Blog_pl]]></category>
		<category><![CDATA[Firma]]></category>
		<category><![CDATA[Technologie]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[aspnetcore]]></category>
		<category><![CDATA[bezpieczeństwo]]></category>
		<category><![CDATA[dotnetcore]]></category>
		<category><![CDATA[identityserver4]]></category>
		<category><![CDATA[skoruba]]></category>
		<guid isPermaLink="false">https://inero-software.com/?p=4374</guid>

					<description><![CDATA[<p>.NET Core daje nam wiele możliwości w zakresie budowania rozwiązań biznesowych w sektorze logistycznym, finansowym czy bankowym. Do najważniejszych zalet tego środowiska należą wbudowane mechanizmy uwierzytelniania i autoryzacji użytkowników czy umożliwienie budowania obiegu zgłoszeń w oparciu o moduły zwane middleware.</p>
<p>Artykuł <a href="https://inero-software.com/pl/skoruba-dla-identity-server/">Skoruba dla Identity Server &#8211; przegląd modułu autoryzacyjnego dla Aplikacji .NET</a> pochodzi z serwisu <a href="https://inero-software.com/pl">Inero Software - Rozwiązania IT i Konsulting</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<div class="row">
<p><div class="col-sm-3"></div></p>
<p><div class="col-sm-6">
<p>&nbsp;</p>
<p><span style="font-weight: 400;"><img decoding="async" class="wp-image-2873 alignleft" src="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" alt="Paragraph icon" width="107" height="107" srcset="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png 208w, https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08-80x80.png 80w, https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08-50x50.png 50w" sizes="(max-width: 107px) 100vw, 107px" /></span></p>
<p><span style="font-weight: 400;">.NET Core daje nam wiele możliwości w zakresie budowania rozwiązań biznesowych w sektorze logistycznym, finansowym czy bankowym. Do najważniejszych zalet tego środowiska należą wbudowane mechanizmy uwierzytelniania i autoryzacji użytkowników czy umożliwienie budowania obiegu zgłoszeń w oparciu o moduły zwane middleware. Moduły te można wymienić w taki sposób, żeby zmienić zachowanie naszej aplikacji.</span></p>
<p><span style="font-weight: 400;">.NET Core pozwala nam także chronić naszą aplikację przed atakami typu: XSS, SQL Injection, CSRF czy Open Redirect Attack. Ponadto możemy łatwo wymusić na aplikacji używanie HTTPS zamiast mniej bezpiecznego HTTP. Dzięki .NET Core programiści mogą realizować proces autoryzacji na wiele sposobów, m.in.: autoryzacja oparta na rolach, oparta na oświadczeniach czy oparta na zasadach.</span></p>
<p><span style="font-weight: 400;">Z powyższych powodów rozwiązania .NET Core są często wykorzystywane w dużych organizacjach korporacyjnych i przedsiębiorstwach. Ze względu na ogromną liczbę użytkowników i skomplikowane procesy biznesowe systemy te wymagają złożonych i solidnych mechanizmów <a href="https://inero-software.com/pl/rozwiazania-logistyczne/cyberbezpieczenstwo/">ochrony kont użytkowników oraz zarządzania tożsamościami</a> w naszych aplikacjach.</span></p>
<p>Dlatego w tym krótkim poście przeglądowym udostępnimy jedno z narzędzi, które wykorzystaliśmy do bezpiecznej autoryzacji, zbudowane dla jednego z naszych klientów korporacyjnych, a mianowicie oparty na .NET projekt <strong>Skoruba.IdentityServer4.Admin</strong>.</p>
<p><img decoding="async" class="wp-image-2770 aligncenter" src="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png" alt="Separating icon" width="124" height="124" srcset="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png 208w, https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10-80x80.png 80w, https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10-50x50.png 50w" sizes="(max-width: 124px) 100vw, 124px" /></p>
<h2><strong><span style="color: #800080;">Czym jest Skoruba?</span></strong></h2>
<p><span style="font-weight: 400;"><img decoding="async" class="alignleft wp-image-2873 " src="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" alt="Paragraph icon" width="80" height="80" srcset="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png 208w, https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08-80x80.png 80w, https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08-50x50.png 50w" sizes="(max-width: 80px) 100vw, 80px" /></span></p>
<p>Skoruba to projekt typu open source zapewniający interfejs użytkownika, który umożliwia administrowanie funkcjami IdentityServer4 i ASP.NET Core Identity. Dzięki temu projektowi jesteśmy w pewien sposób zwolnieni z tworzenia wizualnej strony funkcjonalności związanej z zarządzaniem użytkownikami. Główną zaletą tego projektu jest przyjazny interfejs użytkownika, który opiera się na Bootstrap i pozwala nam w bardzo efektywny sposób zarządzać użytkownikami, hasłami, uwierzytelnianiem dwuskładnikowym, rolami, klientami, zasobami czy strukturą tokenów dostępu i ich roszczeniami.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-3282 size-full" src="https://inero-software.com/wp-content/uploads/2021/02/UI2.png" alt="Skoruba IdentityServer4" width="864" height="512" srcset="https://inero-software.com/wp-content/uploads/2021/02/UI2.png 864w, https://inero-software.com/wp-content/uploads/2021/02/UI2-300x178.png 300w, https://inero-software.com/wp-content/uploads/2021/02/UI2-768x455.png 768w, https://inero-software.com/wp-content/uploads/2021/02/UI2-506x300.png 506w" sizes="(max-width: 864px) 100vw, 864px" /></p>
<p style="text-align: center;"><span style="font-weight: 400;">Źródło: https://github.com/skoruba/IdentityServer4.Admin</span></p>
<p>&nbsp;</p>
<p><span style="font-weight: 400;">Dodatkowo Skoruba udostępnia również API, które możemy w dowolny sposób konsumować i na jego podstawie budować logikę związaną z zarządzaniem kontem w sposób, który będzie lepiej odpowiadał naszym wymaganiom biznesowym. Cała dokumentacja API jest dostępna dzięki Swagget, co pozwala nam testować poszczególne działania API.</span></p>
<p><span style="font-weight: 400;">Możliwość zmiany dostawcy bazy danych, w którym przechowujemy wszystkie informacje o tożsamości, jest również łatwiejsza i domyślnie mamy do wyboru takich dostawców, jak SQLServer, MySql i PostgreSQL.</span></p>
<p><span style="font-weight: 400;">Kolejną zaletą Skoruby jest bardzo dobrze rozwinięty mechanizm rejestrowania zdarzeń w naszej aplikacji oparty na bibliotece Serilog, co pozwala na bardzo sprawną identyfikację potencjalnych problemów występujących podczas działania aplikacji. Poniżej możesz zobaczyć wizualizację aplikacji Skoruby:</span></p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-3275 size-full" src="https://inero-software.com/wp-content/uploads/2021/02/Components.png" alt="Skoruba visualisation" width="1514" height="686" srcset="https://inero-software.com/wp-content/uploads/2021/02/Components.png 1514w, https://inero-software.com/wp-content/uploads/2021/02/Components-300x136.png 300w, https://inero-software.com/wp-content/uploads/2021/02/Components-768x348.png 768w, https://inero-software.com/wp-content/uploads/2021/02/Components-1030x467.png 1030w, https://inero-software.com/wp-content/uploads/2021/02/Components-662x300.png 662w" sizes="(max-width: 1514px) 100vw, 1514px" /></p>
<p style="text-align: center;"><span style="font-weight: 400;">Źródło: https://github.com/skoruba/IdentityServer4.Admin</span></p>
<p><img loading="lazy" decoding="async" class="wp-image-2770 aligncenter" src="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png" alt="Separating icon" width="80" height="80" srcset="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png 208w, https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10-80x80.png 80w, https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10-50x50.png 50w" sizes="(max-width: 80px) 100vw, 80px" /></p>
<h2><span style="font-weight: 400; color: #800080;">Jak Skoruba radzi sobie z rolami użytkowników? Przykład</span></h2>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="wp-image-2873 alignleft" src="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" alt="Paragraph icon" width="80" height="80" srcset="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png 208w, https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08-80x80.png 80w, https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08-50x50.png 50w" sizes="(max-width: 80px) 100vw, 80px" />W tym przykładzie widzimy, jak wygląda sekcja interfejsu, w której można modyfikować role użytkowników:</span></p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-3283 size-full" src="https://inero-software.com/wp-content/uploads/2021/02/UserRoles2.png" alt="Skoruba interfejs" width="1137" height="817" srcset="https://inero-software.com/wp-content/uploads/2021/02/UserRoles2.png 1137w, https://inero-software.com/wp-content/uploads/2021/02/UserRoles2-300x216.png 300w, https://inero-software.com/wp-content/uploads/2021/02/UserRoles2-768x552.png 768w, https://inero-software.com/wp-content/uploads/2021/02/UserRoles2-1030x740.png 1030w, https://inero-software.com/wp-content/uploads/2021/02/UserRoles2-418x300.png 418w" sizes="(max-width: 1137px) 100vw, 1137px" /></p>
<p>&nbsp;</p>
<p><span style="font-weight: 400;">Gdybyśmy nie korzystali ze Skoruby, musielibyśmy to wszystko stworzyć sami, łącznie z logiką i sposobem, jak to dobrze zaprezentować. Daje nam to wiele funkcji, których nie musimy tworzyć, przez co możemy skupiać się bardziej na naszych wymaganiach biznesowych, zamiast tworzyć zupełnie nowy interfejs użytkownika do obsługi usług IdentityServer4 i ASP.NET Core Identity. Przykładowa logika, która pokazuje nam, w jaki sposób Skoruba generuje role użytkowników, jak przedstawiono powyżej, jest pokazana w poniższym bloku kodu:</span></p>
<pre>public virtual async Task BuildUserRolesViewModel(TKey id, int? page)
{s
    var roles = await GetRolesAsync();
    var userRoles = await GetUserRolesAsync(id.ToString(), page ?? 1);
    userRoles.UserId = id;
    userRoles.RolesList = roles.Select(x =&gt; new SelectItemDto(x.Id.ToString(), x.Name)).ToList();

    return userRoles;
}

public virtual async Task GetUserRolesAsync(string userId, int page = 1, int pageSize = 10)
{
    var userExists = await IdentityRepository.ExistsUserAsync(userId);
    if (!userExists) throw new UserFriendlyErrorPageException(string.Format(IdentityServiceResources.UserDoesNotExist().Description, userId), 
    IdentityServiceResources.UserDoesNotExist().Description);

    var userIdentityRoles = await IdentityRepository.GetUserRolesAsync(userId, page, pageSize);
    var roleDtos = Mapper.Map(userIdentityRoles);

    var user = await IdentityRepository.GetUserAsync(userId);
    roleDtos.UserName = user.UserName;

    await AuditEventLogger.LogEventAsync(new UserRolesRequestedEvent(roleDtos));

    return roleDtos;
}
</pre>
<p><span style="font-weight: 400;">Co więcej? Jeśli chcemy, możemy zmienić wygląd interfejsu. Możemy również modyfikować zawartość witryny, zmieniając logikę, która będzie adekwatna do naszych potrzeb biznesowych.</span></p>
<p><span style="font-weight: 400;">Jeśli potrzebujesz więcej informacji o projekcie Skoruba i jego możliwości, wejdź na stronę projektu na GitHub: </span><a href="https://github.com/skoruba/IdentityServer4.Admin"><span style="font-weight: 400;">https://github.com/skoruba/IdentityServer4.Admin</span></a><span style="font-weight: 400;"> </span></p>
<p><img loading="lazy" decoding="async" class="wp-image-2770 aligncenter" src="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png" alt="Separating icon" width="80" height="80" srcset="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png 208w, https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10-80x80.png 80w, https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10-50x50.png 50w" sizes="(max-width: 80px) 100vw, 80px" /></p>
<h2><span style="font-weight: 400; color: #800080;">Podsumowanie</span></h2>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="wp-image-2873 alignleft" src="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" alt="Paragraph icon" width="80" height="80" srcset="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png 208w, https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08-80x80.png 80w, https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08-50x50.png 50w" sizes="(max-width: 80px) 100vw, 80px" /></span></p>
<p>W <a href="https://inero-software.com/pl/">Inero Software</a> zajmujemy się ambitnymi i wymagającymi projektami rozwoju oprogramowania. W tym wpisie na blogu pokazaliśmy, jak szybko można wykorzystać gotowe do użycia, istniejące rozwiązania open-source, aby zapewnić efektywny sposób wdrażania zabezpieczeń oprogramowania. Poza przedstawionym przypadkiem użycia, Skoruba i Identity Server mogą być wykorzystywane do pracy z urządzeniami mobilnymi, systemami IoT lub w ramach komunikacji M2M między maszynami lub robotami.</p>
<p>&nbsp;</p>
<p><a href="https://inero-software.com/pl/"><span style="color: #800080;"><strong>Inero Software</strong></span></a> oferuje wiedzę i doświadczenie w zakresie skutecznego wykorzystywania najnowocześniejszych technologii i danych do kształtowania korporacyjnych produktów cyfrowych przyszłości.</p>
<p>W sekcji <a href="https://inero-software.com/pl/category/firma/"><span style="color: #800080;"><strong>BLOG</strong></span></a> można znaleźć inne artykuły dotyczące nowoczesnych rozwiązań dla przedsiębiorstw.</p>
<p>&nbsp;</p>
<p></p></div><br />
</p></div>
<p>Artykuł <a href="https://inero-software.com/pl/skoruba-dla-identity-server/">Skoruba dla Identity Server &#8211; przegląd modułu autoryzacyjnego dla Aplikacji .NET</a> pochodzi z serwisu <a href="https://inero-software.com/pl">Inero Software - Rozwiązania IT i Konsulting</a>.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">4374</post-id>	</item>
	</channel>
</rss>
