Ik ben een Java (1.4!) programma aan het schrijven en dat bestaat uit verschillende jarfiles. Vanzelfsprekend implementeren die jarfiles allemaal een stukje functionaliteit en zit de code om die functionaliteit op een zinvolle manier aan elkaar te knopen in de 'hoofdapplicatie'.
Nu ben ik een tijd geleden in C# iets tegengekomen (StrongNameIdentityPermission) waardoor het mogelijk is om te vereisen dat de assembly die een andere assembly probeert aan te roepen getekend is door een bepaalde persoon (door de signature met de public key te controleren). Heel eenvoudig in te stellen door een class-level attribute. Nu vroeg ik me af of er voor Java ook zoiets bestaat...
Ik heb een aantal jarfiles, namelijk programma.jar, db.jar, network.jar, etc. Nu wil ik dat db.jar en network.jar gaan eisen dat programma.jar door mij gesigned is (en vice versa) zodat mijn libraries niet door anderen gebruikt worden op manieren waar ze niet voor bedoeld zijn.
Ik heb eens lopen zoeken en ben deze site tegengekomen: http://www.securingjava.com/ Hierop is heel veel informatie te vinden over het sandboxen van untrusted code, maar dat is dus niet wat ik wil doen. Ik wil zorgen dat mijn code alleen gebruikt kan worden door mijn andere code.
Weet iemand of dit mogelijk is in Java en op welke manier? Ik kan natuurlijk wel unlock() achtige methods gaan verzinnen op mijn interfaces, maar daar ben ik geen fan van, ik heb liever iets wat met PKI werkt. Voor zover ik weet kan ik de standaard Java security policies niet gebruiken, daarmee kan de gebruiker instellen dat hij code van mij wel of niet wil runnen. Wat ik wil is dat mijn code bepaalt door welke andere code hij gerund mag worden, buiten de gebruiker om.
Nu ben ik een tijd geleden in C# iets tegengekomen (StrongNameIdentityPermission) waardoor het mogelijk is om te vereisen dat de assembly die een andere assembly probeert aan te roepen getekend is door een bepaalde persoon (door de signature met de public key te controleren). Heel eenvoudig in te stellen door een class-level attribute. Nu vroeg ik me af of er voor Java ook zoiets bestaat...
Ik heb een aantal jarfiles, namelijk programma.jar, db.jar, network.jar, etc. Nu wil ik dat db.jar en network.jar gaan eisen dat programma.jar door mij gesigned is (en vice versa) zodat mijn libraries niet door anderen gebruikt worden op manieren waar ze niet voor bedoeld zijn.
Ik heb eens lopen zoeken en ben deze site tegengekomen: http://www.securingjava.com/ Hierop is heel veel informatie te vinden over het sandboxen van untrusted code, maar dat is dus niet wat ik wil doen. Ik wil zorgen dat mijn code alleen gebruikt kan worden door mijn andere code.
Weet iemand of dit mogelijk is in Java en op welke manier? Ik kan natuurlijk wel unlock() achtige methods gaan verzinnen op mijn interfaces, maar daar ben ik geen fan van, ik heb liever iets wat met PKI werkt. Voor zover ik weet kan ik de standaard Java security policies niet gebruiken, daarmee kan de gebruiker instellen dat hij code van mij wel of niet wil runnen. Wat ik wil is dat mijn code bepaalt door welke andere code hij gerund mag worden, buiten de gebruiker om.
[ Voor 13% gewijzigd door Gerco op 19-07-2006 11:54 ]
- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!