Base solution for your next web application

Activities of "blewis"

I am really interested in using APB in a new project for my company, and even getting Asp.Net Zero. However, at least for this upcoming project, we have to authenticate our web app against an existing OpenAM identity server that uses SAML. I have found the Kentor AuthServices library (<a class="postlink" href="https://github.com/KentorIT/authservices/">https://github.com/KentorIT/authservices/</a>), which supports SAML and makes integration with MVC easy. I downloaded the Abp Sample MVC 5.x multi-page project and installed the AuthServices NugGet packages, and added the necessary configuration for AuthServices to the web.config.

Essentially, AuthServices replaces the normal login page with a redirect to the external OpenAM SAML server. This part works fine. If I try to access a protected page, it redirects me to our 3rd party OpenAM server. I authenticate there, then it POSTs an assertion (an XML file) back to the AuthServicesController that contains the user info (name, roles, etc). When I debug the incoming POST to the controller, I can see that it has set the appropriate Identity info and claims information.

However, at this point I am now in the AuthServicesController and I need to hook into Abp's auth/login pipeline. It's sort of like an external auth provider, but I am not using the regular Abp login form. I need to check to see if this user already exists in the Adp DB, if not, add it (and update their Adp user roles). Then log them in. I can't get them logged in and a proper Adp session.

This process is probably a lot like ADFS federated auth or OpenID. You mention support for these on the Asp.Net Zero page, but there a no other references to it.

Any pointers would be appreciated, Bryan

Because I was using MVC, I started by trying the MVC opion for Kentor. I didn't think about trying the OWIN option (which is a different setup). I will take a look at this info and see if it integrates better and let you know.

Thanks.

We are evaluating using ABP for a new project. We plan on hosting it as an Azure WebApp (PaaS) and direct SMTP is not an option. For other apps we have created in the past (not using ADP), we have used SendGrid. Do I just need to create a new SendGrid Email class inheriting from your EmailSenderBase and inject that? Has anyone already solved this problem?

Thanks, Bryan

Just as a followup. I was not able to get the OWIN version to work. Probably my own fault since I am not familiar enough with OWIN and external auth.

However, I was able to take the MVC version of their library (KentorIT.AuthServices.MVC) and modify their AuthServicesController using some of the ExternalLogin code from your existing AccountController (taken from the AbpMvcSample project). This allowed me to receive the info from our external Identity SAML Provider and add the user to the Abp Users table if it doesn't exist and log the user in.

I haven't been able to fully cleanup the combined code yet, but if anyone else needs SAML support, I would be happy to share.

Bryan

Did you get this working? I too must extend the OU class, adding a bunch of custom fields as well as creating one-to-many relationships with other new classes that I am creating. If the ForeignKey attribute did not work, did using the Fluent API take care of this? Just starting this new project, so any tips would be appreciated.

thanks, Bryan

I am using EF CORE on the Asp.Net Core + jQuery template.

This is my first ADP project -- we just bought Zero. I downloaded version 4.0.0 and I'm starting a new Asp.Net CORE & jQuery MPA project. When I first load it into VS2017, it compiles and runs. Then I do a NuGet package update, which involves about 45 packages across all of the projects (including many ADP packages). After the update, I get multiple errors:

Error CS1061 'IServiceCollection' does not contain a definition for 'AddAbpIdentity' and no extension method 'AddAbpIdentity' accepting a first argument of type 'IServiceCollection' could be found (are you missing a using directive or an assembly reference?) NweaCore.Web.Mvc ...\src\NweaCore.Web.Mvc\Startup\Startup.cs 49 Active

Error CS0516 Constructor 'PermissionChecker.PermissionChecker(UserManager)' cannot call itself NweaCore.Core ...\src\NweaCore.Core\Authorization\PermissionChecker.cs 14 Active

For the first error, I can make it go away by changing services.AddAbpIdentity<Tenant, User, Role, SecurityStampValidator>(options => to services.AddAbpIdentity<Tenant, User, Role>(options =>

But I cannot fix the second error no matter what and I cannot compile the solution. Any pointers? Sorry, I am new to the source at this point. Is it typical for errors to crop up when updating ADP packages?

This is a fresh copy of the code, I haven't made any changes at all other than package updates.

Thanks, Bryan

If I want to completely disable the chat function from a particular app that I'm building, is it best to remove the FEATURE_SIGNALR compilation symbol from the project? I just want to ensure that the SignalR/Chat related code doesn't load/add overhead when it's not going to be used at all.

Thanks, Bryan

I think this issue came up because of the time difference between when the general packages were updated and the release of Zero 4.1. I just downloaded 4.1.1 from the web site but haven't been able to try it yet. I will let you know.

Bryan

The Zero Template comes with the _layout.cshtml file containing a hardcoded page title (title tag). Is there an easy/built-in way to make the name of the active menu/nav item the page title? I have looked through the docs and I don't see anything.

Showing 1 to 10 of 36 entries