доступ запрещен loadLibrary java.lang.RuntimePermission java.security.AccessControlException - PullRequest
0 голосов
/ 06 июня 2019

Мне нужно реализовать аутентификацию смарт-карты для NHS, как описано здесь. https://developer.nhs.uk/apis/spine-core/smartcards.html

Я получаю следующую ошибку.

доступ запрещен ("java.lang.RuntimePermission" "loadLibrary.TicketApiDll") java.security.AccessControlException: доступ запрещен ("java.lang.RuntimePermission" "loadLibrary.TicketApiDll")

Я создал образец апплета и попытался выполнить. Апплет выполняется с использованием пути к классу файла JAR, как упомянуто NHS UK.

  import java.applet.*;
    import java.awt.*;
    import com.gemplus.gemauth.api.GATicket;
    public class AuthenticateExample extends Applet {

          public void paint(Graphics g)
          {
              try{
              String str = this.getParameter("msg");
              g.drawString("asdasdasdasdsad",200,80);   
              //g.drawString(str,100,80);   
              g.drawString(authenticate(),100,80);  
              }
             catch(Exception e)  
            {  
                System.out.println("Exception Aamir");  
                System.out.println(e);  
            }  
          }
          public String authenticate() throws Exception {
            GATicket gat = new GATicket();
            String ticket = gat.getTicket();
            return ticket;

        }

}

<HTML>
<HEAD>
<TITLE> A Simple Program </TITLE>
</HEAD>
<BODY>

Here is the output of my program:

<applet code="AuthenticateExample" ARCHIVE="GATicket.jar"  WIDTH="300" HEIGHT="200">
<PARAM name="msg" value="hi aamir love">
</applet> 
</APPLET>
</BODY>
</HTML>

Мне нужен токен в результате, как указано на веб-сайте NHS.

EDIT

grant codeBase "file:///F:/Projects/Java/GATicket.JAR" {
      permission java.security.AllPermission;
};

было добавлено как описано другим постом.

...