Wolfgang: Java-Applet Sicherheits-blocker

Hi,
Meine Applets funktionieren jetzt, aber leider kann ich an keinem Port hören, oder mit einem anderen Server komunizieren.
Da braucht man doch irgendwelche Zerfitikate. Ich weis blos net, wo ich ein solches Ding hergriege, und wie mann es benutzt.

Wolfgang

  1. Hallo Wolfgang,

    AFAIK sieht es so aus:
    Applets dürfen nur mit dem Server kommunizieren, von dem aus sie aufgerufen wurden.
    Also du benötigst tatsächlich ein Zertifikat ein sogenanntes policy-file.
    Was viel wichtiger ist, du musst den user überzeugen, dass er dir trauen kann ;-).

    schau mal hier nach http://java-tutor.com/download/25Kap Sec OK.pdf

    HTH

    Bye Ed X

  2. Moin, giebt es irgendwo Beispiele dazu?

    1. Hallo,

      Moin, giebt es irgendwo Beispiele dazu?

      Alles was ich dazu habe ist aus Büchern. Ziemlich umfangreich in DATA BECKER, Internetprogrammierung mit JAVA

      Bye Ed X

      1. Moin, Moin,
        Soweit jetzt klar: Ich kann z.B. mit Policy Tool mir eine Keystore-file erstellen.
        In dem stehen dann meine gewünschten Rechte drinn.
        Aber wie benutze ich das Key-file?

        bye Wolfgang

        1. Moin, Moin, Moin, ;-)

          Soweit jetzt klar: Ich kann z.B. mit Policy Tool mir eine Keystore-file erstellen.
          In dem stehen dann meine gewünschten Rechte drinn.
          Aber wie benutze ich das Key-file?

          Als erstes, ich bin kein wirklicher JAVA-crack ich beschäftige mich damit, wenn ich mal Zeit habe, um OOP zu lernen.

          Ein effektiver Test der sache ist nur möglich, wenn du das Applet mit der zugehörigen HTML-Seite über einen Server (lokal oder online) laufenlässt. Diesen Server musst du in deinem Policy file einstellen. Aber soweit bist du ja offensichtlich schon.

          Was jetzt: Dein Policyfile muss in das securityverzeichnis deiner JRE
          (z.B. C:\Program Files\JavaSoft\JRE\1.3.0_01\lib\security) und dorthin muss es bei jedem User, der es benutzt!!!

          Wichtig all das funktioniert nur, wenn du JRE ab 1.2 benutzt, womit alle browserinternen VM ausscheiden. Also selbst wenn du kein swing oder ähnliches verwendest, musst du deine seiten über den HTML-converter laufen lassen.

          Bye Ed X

          1. Moin, Moin, Moin, Moin ;)))
            Thx,
            Aber wie griege ich das Policyfile in den Ordner des Users?
            Schließlich habe ich ja keine IO-Permissionen. Gibt es da irgend eine Einbettung in das HTML-File, oder wie funktioniert das?

            Bye Wolfgang

            1. Hallo Wolfgang,

              willkommen beim sicherheitsmodel von JAVA ;-). Wenn du das file dem user einfach so unterjubeln könntest wäre das ein sicherheitsloch!!!

              Also, du musst ihm erklären, was du mit dem Applet willst, musst ihm das policy-file zum download anbieten und ihn bitten es dorthin zu kopieren. Letztendlich entscheidet er damit, ob er dir traut oder nicht. Um ihm die entscheidung zu erleichtern solltest du es noch signieren.

              Bye Ed X

              1. Hallo,
                hmmm, so wie ich das verstanden habe kann ich also gleich eine Application schreiben.
                Komisch, ich hab schon viele Applets im Netz gesehen, da springt einfach ein dialog auf, und fragt nach den Rechten

                Bye

                1. Hallo,

                  hmmm, so wie ich das verstanden habe kann ich also gleich eine Application schreiben.

                  Nun ja nicht ganz.

                  Komisch, ich hab schon viele Applets im Netz gesehen, da springt einfach ein dialog auf, und fragt nach den Rechten

                  Wenn du das gesehn hast, wird es das wohl geben. Wie gesagt ich weis darüber nicht alles. Vielleicht noch soviel, die Antwort liegt vermutlich irgendwo in java.lang.SecurityManager und java.security. Ich vermute mal java API Specification weis da mehr.

                  Sorry aber hier kann ich dir nicht weiterhelfen

                  Bye Ed X

                  1. Moin,
                    schade, weißt zufällig, wo ich etwas in diese Richtung nachlesen kann?

                    Wolfgang

                    1. Hi,

                      Ich habe mir 3 verschiedene Bücher über JAVA angesehen, in jedem steht nur ein teil des Sicherheitskonzept beschrieben.

                      Wenn du es preiswert haben willst schaue im netz nach. 1 eigentlich sehr dickes Buch ist online zugänglich
                      http://www.javabuch.de/
                      http://java.cs.uni-magdeburg.de/dokus/Tutorial/javabuch2.2-gk/html/cover.html

                      Der inhalt sollte eigentlich der selbe sein

                      und http://www.java-tutor.com/javabuch/index.htm
                      wird wohl bald als Buch erscheinen

                      Ich habe selber noch nicht reingesehen, aber Java in a nutshell von o.reilly verlag (David Flanagan) ist glaube ich insgesamt sehr umfangreich und zu empfehlen wenn man sich mit JAVA beschäftigt.
                      (includes an API quick reference)

                      http://www.davidflanagan.com/books/javanut.htm

                      Sieh dich mal im Buchladen um; ich weiß, das ist sch... teuer. Aber manchmal rentieren sich 60-100 Mark wenn man nicht genervt wegen jeder Kleinigkeit im netz suchen muss.

                      HTH

                      Bye Ed X

                      1. Hi,
                        In meinem Buch steht über Zertifikate nix drin.
                        ...nur über Sandbox und so.

                        ich schau mir das mal an.

                        thx

                        Wolfgang

                        1. Hi,
                          jeah...
                          jetzt Funktioniert es. Aber wenn ich das Applet auf einem anderen System ausführen will, muss der User erst sich mein policyfile und meine *.cert datei saugen, das policyfile ins Homeverzeichnis legen, und mit der keytool-import-Funktion das *.cert file importieren. Dazu muss er noch das Passwort eingeben...

                          ist das für einen "einfachen" User nicht zuviel verlangt?
                          Ich suche also nach einer einfacheren Lösung.

                          Cu

                          1. Hi,

                            ich glaube, die Lösung liegt in der M$J4SDK...
                            ich stöber mal

                            cu