Back to Devexpress

SecuredEFCoreObjectSpace Class

expressappframework-devexpress-dot-entityframeworkcore-dot-security.md

latest3.9 KB
Original Source

SecuredEFCoreObjectSpace Class

An Object Space for EF Core-based applications that use the Security System.

Namespace : DevExpress.EntityFrameworkCore.Security

Assembly : DevExpress.EntityFrameworkCore.Security.v25.2.dll

NuGet Package : DevExpress.ExpressApp.EFCore

Declaration

csharp
public class SecuredEFCoreObjectSpace :
    EFCoreObjectSpace,
    ISessionObjectProvider
vb
Public Class SecuredEFCoreObjectSpace
    Inherits EFCoreObjectSpace
    Implements ISessionObjectProvider

Remarks

XAF creates Object Spaces of the SecuredEFCoreObjectSpace type when an application calls the SecuredEFCoreObjectSpaceProviderBuilderExtensions.AddSecuredEFCore method at startup.

The following example demonstrates how to use SecuredEFCoreObjectSpaceProvider<TDbContext> to create SecuredEFCoreObjectSpace in a non-XAF application.

csharp
using DevExpress.EntityFrameworkCore.Security;
using DevExpress.ExpressApp;
using DevExpress.ExpressApp.Security;
using DevExpress.Persistent.Base;
using DevExpress.Persistent.BaseImpl.EF.PermissionPolicy;
using Microsoft.EntityFrameworkCore;
using System.Configuration;
// ...
class Program {
    static void Main() {
        AuthenticationStandard authentication = new AuthenticationStandard();
        SecurityStrategyComplex security = new SecurityStrategyComplex(
            typeof(PermissionPolicyUser), typeof(PermissionPolicyRole),
            authentication
        );
        var objectSpaceProvider = new SecuredEFCoreObjectSpaceProvider<ApplicationDbContext>(security,
            XafTypesInfo.Instance, ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString,
            (builder, connectionString) => builder.UseConnectionString(connectionString)
        );
        // ...
        IObjectSpace securedObjectSpace = objectSpaceProvider.CreateObjectSpace();
    }
}

You can find the full example in the following GitHub repository: How to use the Integrated mode of the Security System in non-XAF applications (EF Core).

For more information on Object Space and Object Space Provider types, refer to the following topics:

Implements

IObjectSpace

Inheritance

Object BaseObjectSpace CompositeObjectSpace EFCoreObjectSpace SecuredEFCoreObjectSpace

See Also

SecuredEFCoreObjectSpace Members

DevExpress.EntityFrameworkCore.Security Namespace