<?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>IdentityServer4 - Inero Software - Software Consulting</title>
	<atom:link href="https://inero-software.com/tag/identityserver4/feed/" rel="self" type="application/rss+xml" />
	<link>https://inero-software.com/tag/identityserver4/</link>
	<description>We unleash innovations using cutting-edge technologies, modern design and AI</description>
	<lastBuildDate>Fri, 25 Mar 2022 12:40:49 +0000</lastBuildDate>
	<language>en-GB</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>IdentityServer4 - Inero Software - Software Consulting</title>
	<link>https://inero-software.com/tag/identityserver4/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">153509928</site>	<item>
		<title>Skoruba for Identity Server &#8211; a review of authorization module for .NET Applications</title>
		<link>https://inero-software.com/skoruba-for-identity-server-a-review-of-authorization-module-for-net-applications/</link>
		
		<dc:creator><![CDATA[Andrzej Chybicki]]></dc:creator>
		<pubDate>Wed, 03 Feb 2021 15:12:53 +0000</pubDate>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Company]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[aspnetcore]]></category>
		<category><![CDATA[dotnetcore]]></category>
		<category><![CDATA[identityserver4]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[skoruba]]></category>
		<guid isPermaLink="false">https://sandbox-www.devel.inero.com.pl/?p=3272</guid>

					<description><![CDATA[<p>Artykuł <a href="https://inero-software.com/skoruba-for-identity-server-a-review-of-authorization-module-for-net-applications/">Skoruba for Identity Server &#8211; a review of authorization module for .NET Applications</a> pochodzi z serwisu <a href="https://inero-software.com">Inero Software - Software Consulting</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" data-attachment-id="2873" data-permalink="https://inero-software.com/digital-twins-a-dynamic-software-model-of-reality/inero-glify-08-2/" data-orig-file="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" data-orig-size="208,208" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="inero-glyph" data-image-description="" data-image-caption="" data-medium-file="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" data-large-file="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" tabindex="0" role="button" class="alignleft wp-image-2873 size-thumbnail" src="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08-80x80.png" alt="Paragraph icon" width="80" height="80" srcset="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, https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png 208w" sizes="(max-width: 80px) 100vw, 80px" /></span></p>
<p><span style="font-weight: 400;">.NET Core gives us a lot of possibilities in terms of building business solutions in the logistic, finance or banking sector. Among the most important advantages of this environment are built-in mechanisms of user authentication and authorization, enabling to build requests workflow relying on modules called middleware. These modules can be replaced, to change behavior of our application and way how the application handles incoming requests.</span></p>
<p><span style="font-weight: 400;">.NET Core also lets us protect our application against attacks such as: XSS, SQL Injection, CSRF or Open Redirect Attacks. Also, we can easily enforce the application to use HTTPS instead of less secure HTTP. Thanks to .NET Core developers can implement the authorization process in many ways, like: role-based authorization, claims-based or policies-based.</span></p>
<p><span style="font-weight: 400;">For the above reasons, .NET Core solutions are often used in big organizations, corporations and enterprises. Due to the huge amount of users and complicated business processes, these systems require complex and solid mechanisms to protect users accounts and to manage identities in our applications.</span></p>
<p><span style="font-weight: 400;">Therefore, in this short review post we will provide one the tools we utilized for secure authorization built for one of our corporate clients, namely .NET-based  <strong>Skoruba.IdentityServer4.Admin</strong> project.</span></p>
<p><img decoding="async" data-attachment-id="2770" data-permalink="https://inero-software.com/data-the-playground-of-machine-learning/inero-glify-10-2/" data-orig-file="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png" data-orig-size="208,208" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Inero Software" data-image-description="" data-image-caption="" data-medium-file="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png" data-large-file="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png" tabindex="0" role="button" class="aligncenter wp-image-2770 size-thumbnail" src="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10-80x80.png" alt="Separating icon" width="80" height="80" srcset="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, https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png 208w" sizes="(max-width: 80px) 100vw, 80px" /></p>
<h2><strong><span style="color: #800080;">What&#8217;s Skoruba?</span></strong></h2>
<p><span style="font-weight: 400;"><img decoding="async" data-attachment-id="2873" data-permalink="https://inero-software.com/digital-twins-a-dynamic-software-model-of-reality/inero-glify-08-2/" data-orig-file="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" data-orig-size="208,208" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="inero-glyph" data-image-description="" data-image-caption="" data-medium-file="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" data-large-file="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" tabindex="0" role="button" class="alignleft wp-image-2873 size-thumbnail" src="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08-80x80.png" alt="Paragraph icon" width="80" height="80" srcset="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, https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png 208w" sizes="(max-width: 80px) 100vw, 80px" /></span></p>
<p><span style="font-weight: 400;">Scoruba is an open-source project providing a user interface that allows for the administration of IdentityServer4 and ASP.NET Core Identity functionalities. Thanks to this project we are relieved in some way from creating the visual side of the functionality related to user management. </span><span style="font-weight: 400;">Main advantage of Scoruba project is the user-friendly interface, which relies on Bootstrap, and let&#8217;s us manage users, passwords, two-factor authentication, roles, clients, resources or structure of access tokens and their claims in a very efficient way.</span></p>
<p><img fetchpriority="high" decoding="async" data-attachment-id="3282" data-permalink="https://inero-software.com/skoruba-for-identity-server-a-review-of-authorization-module-for-net-applications/ui2/" data-orig-file="https://inero-software.com/wp-content/uploads/2021/02/UI2.png" data-orig-size="864,512" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="UI2" data-image-description="" data-image-caption="" data-medium-file="https://inero-software.com/wp-content/uploads/2021/02/UI2-300x178.png" data-large-file="https://inero-software.com/wp-content/uploads/2021/02/UI2.png" tabindex="0" role="button" 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;">Source: https://github.com/skoruba/IdentityServer4.Admin</span></p>
<p>&nbsp;</p>
<p><span style="font-weight: 400;">In addition, Skoruba also provides an API that we can consume in any way and, on its basis, build the logic related to account management in a way that will better suit our business requirements. All documentation of this API is available thanks to Swagget, which also allows us to test individual actions of the API.</span></p>
<p><span style="font-weight: 400;">The ability to change the database provider in which we store all of the identity information is also easier and by default we have a choice of such providers as: SqlServer, MySql and PostgreSql.</span></p>
<p><span style="font-weight: 400;">Another advantage of the Skoruba is the very well developed mechanism of logging events in our application that is based on the Serilog library, which allows for very efficient identification of potential problems occurring while the application is running. You can see the Skoruba’s application visualisation below:</span></p>
<p><img loading="lazy" decoding="async" data-attachment-id="3275" data-permalink="https://inero-software.com/skoruba-for-identity-server-a-review-of-authorization-module-for-net-applications/components/" data-orig-file="https://inero-software.com/wp-content/uploads/2021/02/Components.png" data-orig-size="1514,686" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="AdminComponents" data-image-description="" data-image-caption="" data-medium-file="https://inero-software.com/wp-content/uploads/2021/02/Components-300x136.png" data-large-file="https://inero-software.com/wp-content/uploads/2021/02/Components-1030x467.png" tabindex="0" role="button" class="alignnone wp-image-3275 size-full" src="https://inero-software.com/wp-content/uploads/2021/02/Components.png" alt="visualisation of skoruba" 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;">Source: https://github.com/skoruba/IdentityServer4.Admin</span></p>
<p><img decoding="async" data-attachment-id="2770" data-permalink="https://inero-software.com/data-the-playground-of-machine-learning/inero-glify-10-2/" data-orig-file="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png" data-orig-size="208,208" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Inero Software" data-image-description="" data-image-caption="" data-medium-file="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png" data-large-file="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png" tabindex="0" role="button" class="aligncenter wp-image-2770 size-thumbnail" src="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10-80x80.png" alt="Separating icon" width="80" height="80" srcset="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, https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png 208w" sizes="(max-width: 80px) 100vw, 80px" /></p>
<h2><span style="font-weight: 400; color: #800080;">How Scoruba handles user roles? Example</span></h2>
<p><span style="font-weight: 400;"><img decoding="async" data-attachment-id="2873" data-permalink="https://inero-software.com/digital-twins-a-dynamic-software-model-of-reality/inero-glify-08-2/" data-orig-file="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" data-orig-size="208,208" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="inero-glyph" data-image-description="" data-image-caption="" data-medium-file="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" data-large-file="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" tabindex="0" role="button" class="alignleft wp-image-2873 size-thumbnail" src="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08-80x80.png" alt="Paragraph icon" width="80" height="80" srcset="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, https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png 208w" sizes="(max-width: 80px) 100vw, 80px" />We can see here, how the section of interface where user roles can be modified looks like:</span></p>
<p><img loading="lazy" decoding="async" data-attachment-id="3283" data-permalink="https://inero-software.com/skoruba-for-identity-server-a-review-of-authorization-module-for-net-applications/userroles2/" data-orig-file="https://inero-software.com/wp-content/uploads/2021/02/UserRoles2.png" data-orig-size="1137,817" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="UserRoles2" data-image-description="" data-image-caption="" data-medium-file="https://inero-software.com/wp-content/uploads/2021/02/UserRoles2-300x216.png" data-large-file="https://inero-software.com/wp-content/uploads/2021/02/UserRoles2-1030x740.png" tabindex="0" role="button" class="alignnone wp-image-3283 size-full" src="https://inero-software.com/wp-content/uploads/2021/02/UserRoles2.png" alt="Skoruba interface" 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;">If we hadn&#8217;t used Scoruba, we&#8217;d have to create it all by ourselves including the logic and way how to present it in good manner. So, it gives us a lot of functions that we don’t have to create and be more focused on our business requirements instead of making the whole new user interface to handle IdentityServer4 and ASP.NET Core Identity services. The example logic that shows us how Scoruba generates user roles as presented above, is shown in the code-block below:</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;">What’s more? If we wish, we can change the appearance of the interface if we want, because the whole page is made with RazorPages in MVC design pattern. We may also modify the content of the site by alternating the logic that will be accurate to our business needs.</span></p>
<p><span style="font-weight: 400;">If you need more information about the Scoruba project and its power just go to the project site on 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 decoding="async" data-attachment-id="2770" data-permalink="https://inero-software.com/data-the-playground-of-machine-learning/inero-glify-10-2/" data-orig-file="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png" data-orig-size="208,208" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Inero Software" data-image-description="" data-image-caption="" data-medium-file="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png" data-large-file="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png" tabindex="0" role="button" class="aligncenter wp-image-2770 size-thumbnail" src="https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10-80x80.png" alt="Separating icon" width="80" height="80" srcset="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, https://inero-software.com/wp-content/uploads/2019/05/inero-glify-10.png 208w" sizes="(max-width: 80px) 100vw, 80px" /></p>
<h2><span style="font-weight: 400; color: #800080;">Summary</span></h2>
<p><span style="font-weight: 400;"><img decoding="async" data-attachment-id="2873" data-permalink="https://inero-software.com/digital-twins-a-dynamic-software-model-of-reality/inero-glify-08-2/" data-orig-file="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" data-orig-size="208,208" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="inero-glyph" data-image-description="" data-image-caption="" data-medium-file="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" data-large-file="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png" tabindex="0" role="button" class="alignleft wp-image-2873 size-thumbnail" src="https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08-80x80.png" alt="Paragraph icon" width="80" height="80" srcset="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, https://inero-software.com/wp-content/uploads/2019/10/inero-glify-08.png 208w" sizes="(max-width: 80px) 100vw, 80px" /></span></p>
<p><span style="font-weight: 400;">In </span><a href="https://inero-software.com"><span style="font-weight: 400;">Inero Software &#8211; R&amp;D software house</span></a><span style="font-weight: 400;"> we deal with ambitious and demanding software development projects. In this blog post we showed how quickly one can use ready-to-use existing open-source solutions to provide an efficient way of implementing software security. Apart from presented use-case, Scoruba and Identity Server can be also used for working with mobile devices, IoT systems or withing a M2M communication between machines or robots.</span></p>
<p><span style="font-weight: 400;">If you want to know more about us or more about how to transform business needs to reliable digital products, visit our blog or read more about us on our webpage:</span></p>
<p><span style="font-weight: 400;"><a href="https://inero-software.com">https://inero-software.com</a> or on our blog site: <a href="https://inero-software.com/category/blog/company/">https://inero-software.com/category/blog/company/</a></span></p>
<p>&nbsp;</p>
<p></p></div><br />
</p></div>
<p>Artykuł <a href="https://inero-software.com/skoruba-for-identity-server-a-review-of-authorization-module-for-net-applications/">Skoruba for Identity Server &#8211; a review of authorization module for .NET Applications</a> pochodzi z serwisu <a href="https://inero-software.com">Inero Software - Software Consulting</a>.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3272</post-id>	</item>
	</channel>
</rss>
