2016-03-31 107 views
1

2 rolüm var.Kullanıcıda güvenlik açığı bildiren çoklu rol var

Tüm sayfaları görebileceğiniz bir admin rolüdür. Diğer

<security-constraint> 
    <web-resource-collection> 
     <web-resource-name>Admin Pages</web-resource-name> 
     <url-pattern>/*</url-pattern> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>admin</role-name> 
    </auth-constraint> 
</security-constraint> 

IT sayfalarını görebilirsiniz it rolüdür. İşte

<security-constraint> 
    <web-resource-collection> 
     <web-resource-name>IT Pages</web-resource-name> 
     <url-pattern>/it/*</url-pattern> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>it</role-name> 
    </auth-constraint> 
</security-constraint> 

Ben admin ve it zorunluluk erişim, ama sadece durumda kullanıcı hem rolleri admin ve it ve onlardan sadece biri olduğunu bir sayfa var.

<security-constraint> 
    <web-resource-collection> 
     <web-resource-name>Admin and it Pages</web-resource-name> 
     <url-pattern>/other/*</url-pattern> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>admin</role-name> 
     <role-name>it</role-name> 
    </auth-constraint> 
</security-constraint> 

Fakat önceki <security-constraint> fiili davranış adminveyait rolü bu sayfaya erişmek olabilir.

Bunu nasıl kullanıcı 2 rolleri adminveit Bu sayfaya erişmek için değil, sadece bir tanesi için beyan edilmelidir uygulamak için elde edebilirsiniz?

cevap

3

Bu mümkün değil. Roller bu şekilde çalışmıyor. Rollerin anlamını geriye doğru görüyorsun. Rolleri izin olarak düşünmek daha kolay olabilir.

Sadece yeni bir rol oluşturun.

+0

Sadece bunun yeni bir rol oluşturduğunu biliyorum, ancak bu şeyin web.xml'de uygulanıp uygulanamayacağını görmeye çalışıyorum –