I implemented my own PermissionChecker, which works fine. I also implemented my own AuthorizationProvider, which works also fine. The only thing is that the PermissionManager.GetAllPermissions() always returns permissions from all AuthorizationProviders. That's because of the following line of code in the initialize of the PermissionManager
foreach (var providerType in _authorizationConfiguration.Providers)
In most cases I want all permissions to be loaded, but not always. How can I get permissions from one AuthorizationProvider without changing code in PermissionManager? Or even better, how could I control this with a parameter?
Thanks Aaron, I send a message to the development team.
Ok great, that should work. But how to handle roles and permissions? For example tenant a wants to share a project with tenant b, but tenant b has other permissions (only viewing projects). But tenant b have to get other right in his own environment (also editing projects)
Is it possible to share data with different tenants?
For example tenant a has projects and want to share the project data with it's client (tenant b).
I'm sorry for my late reply. Were having difficulties sending the project by email. We have been busy trying figuring it out. In de AccountController in the web project there is a method GetLoginResultAsync. The input to the methid is correct. But however, the _logInManager.LoginAsync is always returning with no success. The loginManager is the one from Assembly Abp.Zero, Version=2.0.1.0
private async Task<AbpLoginResult<Tenant, User>> GetLoginResultAsync(string usernameOrEmailAddress, string password, string tenancyName)
{
var loginResult = await _logInManager.LoginAsync(usernameOrEmailAddress, password, tenancyName);
switch (loginResult.Result)
{
case AbpLoginResultType.Success:
return loginResult;
default:
throw _abpLoginResultTypeHelper.CreateExceptionForFailedLoginAttempt(loginResult.Result, usernameOrEmailAddress, tenancyName);
}
}
We bought a AspNet Zero license. I was searching trough the sources code of ABP and zero on github and don't see the fields you mentioned on AbpUsers entity.
I also have to mention that a migration named "Added_Tenant_UI_Customization_Properties" is delivered within de zero 4.0.0 download, which is new in this version, but I don't see a migration for the AbpUsers table. I even created a new clean database and created all tables from scratch with the downloaded package.Even then I did not find the fields mentioned.
I also did a database compare old, new and saw no big differences.
I still think there is something missing.
Ok, but that means that other changes to the database are also not recognized. How do we know what database changes are made?
I also generated a new migration but the fields NormalizedUserName and NormalizedUserName do not show up. I actually can't find them anywhere.
Yes we use the default vs merge tool in combination with TFS
Thank you for your reply.
How do I know which fields are normalized in this version? Is there any documentation about that?
After upgrading to V4.0.0 we cannot login with existing users anymore. We use ASP.NET 5.x and JQuery version. We don't have modifications at the abp source and only use de NuGet packages. When debugging it seems to go wrong in abp assembly. It looks like it checks on normalized credentials, is there a database migration script missing in the source?