Avatar billede krak Nybegynder
21. juli 2004 - 10:18 Der er 6 kommentarer og
1 løsning

JApplet: Bøvl via http, men virker lokalt.

Jeg har en JApplet, der kræver filadgang, og jeg har derfor signeret jar-filen, lavet certifikat osv.

Der er 2 problemer:

1. Når jeg kører den lokalt med \\server\sti\index.htm fungerer den fint. Men når jeg vil køre den via http://server/sti/index.htm giver den følgende fejl:

java.lang.SecurityException: SHA1 digest error for InfoDialog.class
at sun.security.util.ManifestEntryVerifier.verify(Unknown Source)
- hvor InfoDialog.class er den første klasse, mainklassen bruger.

Mit manifest ser sådan ud:

Manifest-Version: 1.0
Class-Path: <classpath-filer>
Main-Class: <main-class>

- og der er et ekstra linieskift til sidst som der skal være.
Nogen, der har oplevet et lignende problem?


2. Kører jeg den via http fra en anden maskine end min egen, får jeg i stedet følgende fejl:

java.io.IOException: Server returned HTTP responsecode: 401 for URL: http://<server>/<sti>/<jar-fil>
...
load: class <main-class> not found
...

- Policy-filen ligger dog allerede brugerens user.home og indeholder:

keystore "http://<server>/<sti>/<keystore-fil>";

grant signedBy "<navn>",  codeBase "http://<server>/<sti>/" {
  permission java.io.FilePermission "<<ALL FILES>>", "read, write, delete, execute";
  permission java.util.PropertyPermission "user.dir", "read, write";
  permission java.security.AllPermission;
};

(og ja, der bliver givet rigeligt med tilladelser her, men det rydder jeg op i, når jeg får det til at virke)

Det undrer mig, at den ikke kommer og spørger om der er tillid til certifikatet, da det ligger i samme dir som html, class og jar på serveren.

Hvad kan være galt i hhv 1 og 2?
Avatar billede krak Nybegynder
21. juli 2004 - 12:15 #1
Problem 1 løste sig ved at jeg signerede jar-filen igen... Nu kan applet'en køre fra http, men kun på min maskine. Har undersøgt, om der er forskelle i sikkerheds-filerne, men de er de samme.

Problem 2 eksisterer endnu... Nogen, der har svar?
Avatar billede arne_v Ekspert
01. august 2004 - 21:44 #2
Det har intet med Java security på client at gøre.

Det har noget med web server security at gøre.

Fra HTTP specs:

10.4.2 401 Unauthorized

  The request requires user authentication. The response MUST include a
  WWW-Authenticate header field (section 14.47) containing a challenge
  applicable to the requested resource. The client MAY repeat the
  request with a suitable Authorization header field (section 14.8). If
  the request already included Authorization credentials, then the 401
  response indicates that authorization has been refused for those
  credentials. If the 401 response contains the same challenge as the
  prior response, and the user agent has already attempted
  authentication at least once, then the user SHOULD be presented the
  entity that was given in the response, since that entity might
  include relevant diagnostic information. HTTP access authentication
  is explained in "HTTP Authentication: Basic and Digest Access
  Authentication" [43].
Avatar billede arne_v Ekspert
01. august 2004 - 21:46 #3
Prøv og download jar filen med browser og se om du kan det eller
bliver promptet for noget brugernavn/password.

Ja => ændre på server setup

Nej => muligvis kan IE noget som Java ikke kan, IE kan godt identificere
dig som bruger overfor IIS, hvis den pågældende URL kun kan servers
til clienst som er logget på Windows domain, det kan Java nok ikke,
derfor igen skal der ændres på server setup
Avatar billede arne_v Ekspert
08. august 2004 - 23:53 #4
Kommet videre ?
Avatar billede krak Nybegynder
09. august 2004 - 13:55 #5
Jeg har lige været på ferie, og beklager at jeg ikke har fået svaret. Problemet er endnu ikke løst, men jeg ved heller ikke hvor meget tid jeg får til det i den kommende tid. Jeg vender tilbage senere, men giver gerne point for dit forsøg, da det måske kan gøre at jeg senere kommer videre.

Lige nu har jeg dog ikke den fornødne tid til at undersøge det. Sorry... Men læg et svar og du får point alligevel.
Avatar billede arne_v Ekspert
09. august 2004 - 13:57 #6
ok
Avatar billede krak Nybegynder
24. august 2004 - 10:52 #7
Nu har jeg lidt mere tid, og har derfor oprettet nyt spørgsmål på http://eksperten.dk/spm/532441
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester