probleme avec jaas et les permissions
salut j'ai essayé de gérer la notion des permission avec jaas à l'aide d'un simple exemple
voici ma classe de test:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
public static void main(String[] args) {
boolean result = false;
try
{
//-Djava.security.auth.login.config=C:\JAAS\src\fileLogin.config
System.setProperty("java.security.auth.login.config", "c:\\MonitoringJMX.config");
LoginCallback loginCallback=new LoginCallback("user","motDePasse");
LoginContext loginContext = new LoginContext("Login",loginCallback);
loginContext.login();
System.out.println("Le principal="+loginContext.getSubject().getPrincipals().iterator().next().getName());
result=true;
System.out.println("Authentification=="+result);
try
{
AccessController.checkPermission(new PermissionImpl("admin"));
System.out.println("Authorisation success!!!!!!!!");
}catch (AccessControlException e) {
e.printStackTrace();
System.out.println("Authorisation failed!!!!!!!!");
}
loginCallback=null;
}
catch (Exception e) {
e.printStackTrace();
System.out.println("login failed");
result = false;
}
} |
le fichier policy est:
Code:
1 2 3 4
|
grant Principal jaas.fileLogin.MyPrincipalRole "user"{
permission jaas.fileLogin.PermissionImpl "admin";
}; |
j'ai ajouter l'argument:
Code:
-Djava.security.policy=C:\NesNes.policy
l'authentification va bien mais j'obtient toujours l'erreur suivante:
Code:
1 2 3 4 5 6
|
java.security.AccessControlException: access denied (jaas.fileLogin.PermissionImpl admin)
Authorisation failed!!!!!!!!
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:264)
at java.security.AccessController.checkPermission(AccessController.java:427)
at Test.main(Test.java:33) |
ou est le probleme?