2

I am developing a spring project. In my security-context file I am using the intercept-url tag to manage the access roles:

<security:http once-per-request="false" request-matcher="mvc"
        use-expressions="true">
        <security:form-login login-page="/login" default-target-url="/"
            authentication-success-forward-url="/"
            authentication-failure-url="/login?error=true" />
        <security:intercept-url pattern="/static/**" access="permitAll" />
        <security:intercept-url pattern="/login" access="permitAll" />
        <security:intercept-url pattern="/loggedout" access="permitAll" />
        <security:intercept-url pattern="/" access="isAuthenticated()" />

        <security:intercept-url pattern="/home" access="isAuthenticated()" />
        <security:intercept-url pattern="/error" access="isAuthenticated()" />
        <security:intercept-url pattern="/empappraisal" access="hasAnyRole('ADMIN','APPRAISER','HRMANAGER')" />


        <security:intercept-url pattern="/**" access="denyAll" />
        <security:csrf disabled="true" />
        <security:logout logout-success-url="/login" />
        <security:access-denied-handler error-page="/error" />
    </security:http>

This is hard coded. I want to load intercept-url and access roles from database. How can I do this?

My Database Tables:

create table role (
    id int(11) not null primary key auto_increment,
    roleName varchar(45) not null
);

create table urls(
    id          int not null primary key auto_increment,
    urlLink varchar(512) not null unique
);

create table urlsandroles(
    id              int not null primary key auto_increment,
    fkUrlId     int not null,
    fkRoleId        int not null,
    constraint FK_urlsAndRoles_urlId   foreign key(fkUrlId) references urls(id),
    constraint Fk_urlsAndRoles_roleId   foreign key(fkRoleId) references role(id)
);
Mujahid Khan
  • 77
  • 10

0 Answers0