Sinn des Security Managers

Plunty

Mitglied
Hallo Zusammen,

ich habe eine Verständnisfrage zum Security Manager(SM) von Java Applikation (keine Applets).

Wen soll dieser eigentlich schützen?
Der SM muss ja extra vom Programmierer im Quellcode gestartet werden und er kann auch die Rechte in einer eigenen Policy - Datei festlegen... hat er vor ein schädliches Programm zu schreiben wird er das nicht machen und ansonsten braucht mans ja nicht? Was ist also Sinn und Zweck der Geschichte?

Bei Google steht dann über den Security Manager immer nur dass man ihn setzten kann, dass man damit Rechte vergibt und wie das alles geht aber irgendwie nie ohne verständliches Beispiel wann er Sinn macht... Da steht z.B. dass man es bei RMI aufm Server setzten kann um Clients nicht falsche Methoden ausführen zu lassen aber die Methoden die über RMI angesprochen werden dürfen sind ja eh durchs Interface beschränkt oder etwa nicht? Also wenn des jemand mal einfach verständlich erklären kann wär ich ihm sehr dankbar :)


Gruß Plunty
 
S

SlaterB

Gast
der klassische Einsatz scheinen mir die Applets zu sein:
es gibt eine laufende Java-Umgebung im Browser, die zusätzliche beliebige Klassen lädt und ausführt,
da muss man aufpassen was dieser Code macht, es wird eine Sandbox bereit gestellt, kritische Befehle wie Festplattenzugriff verhindert,

bei dem RMI-Beispiel ist vielleicht an Übertragung von ganzen Klassen an den Server gedacht mit dann ähnlicher Situation,
statt Interface-Aufrufen wird beliebiger neuer Code ausgeführt

1.2.5 Sicherheit

----

Wiki :: tasin/RMITutorial2
Solange die Server- oder Clientapplikation keinen Code von einem entfernten Rechner nachladen soll, ist kein Securitymanager nötig.

----

aber auch bei eigenen Programmen, die eigentlich nur in geeigneten Bahnen laufen sollen, kann es Sinn machen, zur Sicherheit die Rechte einzuschränken,
da bietet man einen JFileChooser zur Auswahl einer Textdatei an, und der kann glatt neue Verzeichnisse erstellen oder umbenennen oder löschen, hat man daran genau gedacht?

wenn man irgendeinen kleinen dynamischen ClassLoader eigentlich nur für eigene Plugins wie Look & Feels der GUI hat,
dazu eine Upload-Funktionalität, eigentlich nur für Dateien wie z.B. hier im Forum Posting-Anhänge,
und es ein User doch durch geschickte Dateipfade schafft, eine .class-Datei in das Plugin-Verzeichnis zu schieben (und auch zu starten),
dann kann damit vielleicht eigener Code zur Ausführung gebracht werden mit allen möglichen Folgen,
dann ist ein laufender Security-Manager doch ganz nett, falls er hilft

oder Klassen aus einer DB geladen, auf deren Tabellen ein User 'eigentlich' keinen Zugriff haben sollte aber es doch irgendwie schafft, SQL bietet ja manche Tricks

----

bei vorliegenden Quellcode und eigenen Start ist Security natürlich abschaltbar soweit bekannt, genau wie Passwörter usw.,
es geht hauptsächlich um laufende geschützte Programm und deren offene Eingangstüren
 
Zuletzt bearbeitet von einem Moderator:
M

maki

Gast
Wen soll dieser eigentlich schützen?
Der SM muss ja extra vom Programmierer im Quellcode gestartet werden und er kann auch die Rechte in einer eigenen Policy - Datei festlegen... hat er vor ein schädliches Programm zu schreiben wird er das nicht machen und ansonsten braucht mans ja nicht? Was ist also Sinn und Zweck der Geschichte?
Nö, der SM kann auch deklerativ konfiguriert werden wie es zB. bei ServletContainern(Tomcat) und AppServern(GlassFish, etc. pp.) der Fall ist.
Damit kann man zB. verschiedene Anwendungen von verschiedenen Herstellern auf einem Server laufen lassen und sicherstellen dass sich alle Anwendungen "nett" verhalten, "nett" reicht dabei von Sicherheit bis zu dem Fall in dem eine App der Meinung ist sie müsste ein System.exit aufrufen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D Interfaces von Interfaces macht das noch Sinn? Java Basics - Anfänger-Themen 21
F Hat es noch einen Sinn, alte Versionen zu lernen Java Basics - Anfänger-Themen 45
berserkerdq2 Wo ist der SInn, dass man den Stream, den ich zum Schreiben nutze, outputstream nenne? Java Basics - Anfänger-Themen 5
H Sinn von Interfaces Java Basics - Anfänger-Themen 21
W Sinn eines Singleton ? Java Basics - Anfänger-Themen 14
R getUserProperties() macht für mich keinen Sinn Java Basics - Anfänger-Themen 8
E Sinn: final in Parameterliste verwenden Java Basics - Anfänger-Themen 2
B Sinn von Lambdas? Java Basics - Anfänger-Themen 16
5 Welchen Sinn hat ein Runnable Java Basics - Anfänger-Themen 6
P OOP Sinn von abstrakten Klassen Java Basics - Anfänger-Themen 2
M Kapselung Datenkapselung Sinn direkter Zugriff? Java Basics - Anfänger-Themen 1
B Der Sinn von Arrays Java Basics - Anfänger-Themen 2
Q Container sinn? Java Basics - Anfänger-Themen 3
S string index out of range - es ergibt keinen Sinn Java Basics - Anfänger-Themen 6
C Sinn eines Interfaces? Java Basics - Anfänger-Themen 4
J Sinn/Nutzen von Scanner Java Basics - Anfänger-Themen 23
B Sinn von Reflections Java Basics - Anfänger-Themen 10
H Vererbung Prinzip der Ersetzbarkeit-Sinn? Java Basics - Anfänger-Themen 9
F Sinn der SuppressWarnings("unused")-Annotation Java Basics - Anfänger-Themen 5
R Sinn des programmes Java Basics - Anfänger-Themen 10
W Sinn von Konstruktorsyntax und finalize Java Basics - Anfänger-Themen 14
J Worin besteht der Sinn und Anwendungsbereich von Dreidimensionalen Arrays? Java Basics - Anfänger-Themen 11
J Datentypen Was ist der Sinn vom Datentyp "char" ? Java Basics - Anfänger-Themen 11
T Sinn von finally? Java Basics - Anfänger-Themen 3
M Variablen Zinseszinsberechnung - Variable ergibt keinen Sinn Java Basics - Anfänger-Themen 15
A Klassen Sinn des Konstruktors Java Basics - Anfänger-Themen 12
J Welchen Sinn haben abstrakte Methoden? Java Basics - Anfänger-Themen 4
D Sinn von Jar Dateien Java Basics - Anfänger-Themen 5
D Sinn von Interfaces - Wozu? Java Basics - Anfänger-Themen 9
K Sinn eigener Exceptions Java Basics - Anfänger-Themen 11
Luk10 Sinn von Instanzierung ohne Referenz Java Basics - Anfänger-Themen 7
hdi Sinn von RuntimeExceptions? Java Basics - Anfänger-Themen 90
Developer_X NullPointer Exception ohne Sinn Java Basics - Anfänger-Themen 19
L Sinn hinter Generic? Java Basics - Anfänger-Themen 5
M Der Java Schlüsselwort null; ?Welche Anweisung und Sinn? Java Basics - Anfänger-Themen 12
A Macht es Sinn Arraylisten mit Gettern zu übergeben? Java Basics - Anfänger-Themen 19
M Variable überwachen und Sinn eines Threads Java Basics - Anfänger-Themen 7
G Sinn vo OOP Java Basics - Anfänger-Themen 5
P Unterschied zwischen Interface und Vererbung und Sinn? Java Basics - Anfänger-Themen 5
G sinn von JList Java Basics - Anfänger-Themen 6
K Sinn von Interfaces Java Basics - Anfänger-Themen 10
S java.security.AccessControlException: access denied Java Basics - Anfänger-Themen 4
T java.security.AccessControlException: access denied (java.net.SocketPermission Java Basics - Anfänger-Themen 2
N java.security.AccessControl Java Basics - Anfänger-Themen 7
G suche xjava.security.Cipher; import cryptix.provi Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben