XAF - User Authentication and Group Authorization API in .NET Core Apps: Blazor Server, Web API/OData v4 and More (powered by XPO)

XAF Team Blog
05 February 2020

Our recent enhancements to user authentication and group authorization demos include the following:  

  • .NET Core 3.0+ versions of WinForms, ASP.NET Core MVC, Web API/OData v4 + DevExtreme apps.
  • New non-XAF Blazor Server demo and tutorial based on DevExpress Blazor components and XAF's security system APIs.
  • New extension methods CanXXX for the SecurityStrategy class (where XXX is Read, Write, Create, Delete, Navigate) that replace complicated IsGranted calls with many parameters.

    //BEFORE
    SecuritySystem.IsGranted(
        new PermissionRequest(ObjectSpace, typeof(DemoTask), 
           SecurityOperations.Write, selectedObject, nameof(DemoTask.Status)
        )
    );
    
    //AFTER:
    security.CanWrite(selectedObject, nameof(DemoTask.Status));
    We simplified XAF and non-XAF demo code and help topics accordingly. XAF WinForms and WebForms developers will benefit from these usability enhancements as well. For more examples, see our MainDemo v19.2.6 ("c:\Users\Public\Documents\DevExpress Demos 19.2\Components\eXpressApp Framework\MainDemo\CS\MainDemo.Module\Controllers\TaskActionsController.cs").
  • New extension methods CanXXXByUser and CanXXXByRole for the SecurityStrategy class. These extension methods help query access rights for required user and role objects even if you are not logged in under them within a secured application. Use cases include custom UI or diagnostic tools designed to display effective permissions for certain users (T413260, T826065, T552175). More documentation and code examples are coming soon.

Please Help Us Decide on Xamarin, Blazor WebAssembly, WPF and ASP.NET MVC 5 Demo Apps

Based on user surveys and blog comments, interest for highlighted platforms was not very high. Also, many users wanted to see WinForms and ASP.NET Core examples with OAuth2 - using Microsoft Office 365, Azure Active Directory or Google authentication providers (we currently display a simple Forms authentication with a login and password).

Please leave comments about the most desired platforms and use-case scenarios with our authentication and group authorization APIs. Even if you are not using XAF yet, we would love to hear from you about problematic or costly tasks associated with other security libraries such as Identity Server or ASP.NET Core. Thank you for your continued support!

Recent Feedback

I wanted to share a testimonial from David Desiderà, Solution Architect at SpecTec, who successfully integrated XAF's security system APIs with a legacy WinForms app:

David Desidera, Solution Architect at SpecTect More than one year ago I explained to my collaborators that - in my opinion - it was possible to integrate XAF's security layer with UI interface into an existing WinForms enterprise application that was 10 years old. We successfully implemented it! It took 40 man-days of job in total instead of at least 400 if I had decided to start from scratch. You guys saved my life!!

If you are using XAF's security system APIs or simply evaluating it at present time, please share your experience below.

What’s New in v20.1

To explore the scope, breadth and capabilities of our new products/features, please visit: https://www.devexpress.com/Subscriptions/New-2020-1.xml.
Mario Blatarić
Mario Blatarić

Extensions are really great addition to security system, thanks!


Personally, I do not have any interest in Xamarin and ASP.NET MVC 5, probably WPF neither any more.

I do have great interest in Blazor WebAssembly, however, it seems to be way to early - WebAssembly itself is still a baby. 

But, I am hoping Blazor WebAssembly will become powerful multi-platform client technology, not only in browser, but out of browser as well, providing .NET/C# development environment for any platform. 

So, if Microsoft keeps focus on it, I would love to see Blazor WebAssembly demos and future moving into that direction.  

5 February 2020
William Orejuela 1
William Orejuela 1
Blazor WebAssembly
5 February 2020
James S K Makumbi
James S K Makumbi
I too am leaning more towards blazor Web assembly but would love to see some wpf as well. As soon as I have time, wpf is my next target for development with XPO. 
5 February 2020
CRM-685d5f89-76a5-41b0-9890-49131406c14c
Customer127969
Blazor 
5 February 2020
Bunty
Bunty

Good work Dennis and xaf team, specially for creating simple security system Demo.

My vote to Blazor Web Assembly

Also waiting eagerly for 20.1 XAF blazor to hands on

6 February 2020
tzanis tasos
tzanis tasos
Blazor Webassembly, Xamarin
6 February 2020
Eric Upton 1
Eric Upton
I would like to see a Xamarin example
6 February 2020
Norbert K.
Norbert K.

+1 for Blazor

+1 for Xamarin

6 February 2020
FEA
FEA

Blazor

Xamarin

WebAssembly

6 February 2020
Igor Laktic
Igor Laktic

Blazor!

Blazor reporting,

Blazor Dashboard.

7 February 2020
Isa_Tahiri
Isa_Tahiri

Blazor 

Xamarin 

10 February 2020
Paolo KALC
Paolo KALC
XAF Blazor
10 February 2020
Arjan van Dijk
Arjan van Dijk
Xaf blazor
11 February 2020
Bjoern Hack
Bjoern Hack
Blazor
11 February 2020
Steve Rouse
Steve Rouse
+1 XAF Blazor
13 February 2020
Dennis (DevExpress)
Dennis (DevExpress)
Thank you for your feedback, Guys - my team and I appreciate it!
17 February 2020
Leon Bost
Leon Bost
XAF Blazor
11 April 2020

Please login or register to post comments.