簡體   English   中英

如何理解java Socket-Permissions?

[英]How to understand java Socket-Permissions?

permission java.net.SocketPermission "192.168.1.1:31337", "connect, accept, resolve";

以下權限允許什么? 我的應用程序是否允許僅接受來自192.168.1.1:31337的連接(可能是外部客戶端)或接受連接到192.168.1.1:31337(我的應用程序運行在192.168.1.1:31337,這與'listen的區別在哪里“?)。

如果您的代碼是applet或在Java安全管理器下運行,則需要明確授予它執行操作的權限。

為了允許applet(或使用安全管理器運行的應用程序)進行資源訪問,必須為嘗試訪問的代碼顯式授予相應的權限。

默認情況下,您的代碼沒有套接字權限。 您的許可,說你的代碼必須接受連接,連接到並解決與IP主機的權限192.168.1.1的端口31337

“接受”和“連接”動作是顯而易見的。

當存在任何其他操作時,隱含“解決”操作。 操作“解析”是指主機/ IP名稱服務查找。

“listen”操作僅在與“localhost”一起使用時才有意義。

listen和accept之間的區別在於,listen意味着“為連接做好准備,看看是否有連接等待”,接受意味着“好,接受它”。

請參閱java 7.java.net.SocketPermission java docs中的 權限 文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM