當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Java java.net.NetPermission用法及代碼示例


NetPermission類用於允許網絡權限。 NetPermission 類擴展了BasicPermission 類。它是 “named” 權限,即它包含名稱但不包含操作。

權限名稱 什麽權限允許 與此權限相關的風險
allowHttpTrace 此權限允許在 HttpURLConnection 中使用 HTTP TRACE 方法 攻擊者可能使用 HTTP TRACE 來訪問 HTTP 標頭中的安全性
getCookieHandler 此權限允許獲取處理此 HTTP 會話的高度安全的 cookie 信息的 cookie 處理程序 攻擊者可以獲得 cookie 處理程序並訪問高度安全的 cookie 信息
getNetworkInformation 此權限允許獲取有關本地網絡接口的信息 攻擊者可能會獲取有關本地硬件的信息
getProxySelector 此權限允許代理選擇器選擇在建立網絡連接時使用哪些代理 攻擊者可能會獲得ProxySelector並獲取有關內部網絡的代理主機和端口的信息
獲取響應緩存 該權限允許訪問本地響應緩存 攻擊者可能會訪問可能包含安全信息的本地緩存
requestPasswordAuthentication 此權限授予向身份驗證者詢問密碼的能力 攻擊者可能會竊取此密碼
setCookieHandler 此權限允許設置 cookie 處理程序來處理此 HTTP 會話的高度安全的 cookie 信息 攻擊者可以獲得 cookie 處理程序並訪問高度安全的 cookie 信息
setDefaultAuthenticator 這允許設置驗證器 攻擊者可以設置身份驗證器並獲取安全信息
設置代理選擇器 此權限允許代理選擇器設置在建立網絡連接時使用哪些代理 攻擊者可以設置ProxySelector並獲取有關內部網絡的代理主機和端口的信息
setResponseCache 該權限允許設置本地響應緩存 攻擊者可能會訪問可能包含安全信息的本地緩存
指定StreamHandler 該權限允許指定 StreamHandler 來創建 URL 攻擊者可能會創建 URL 並訪問他們通常無法訪問的資源

用法:類聲明

public final class NetPermission
extends BasicPermission

該類的構造函數

構造函數 說明
NetPermission(String name) 用於創建具有給定名稱的新NetPermission對象
NetPermission(String name, String action) 用於創建具有給定名稱和操作的新NetPermission對象

從類 java.security.BasicPermission 繼承的方法

方法 說明
equals(Object obj) 檢查兩個BasicPermission對象是否相等
getActions() 以字符串格式返回操作
hashCode() 返回該對象的哈希值
implies(Permission permission) 檢查該對象是否隱含給定的權限
newPermissionCollection() 返回一個新的PermissionCollection對象

從類 java.security.Permission 繼承的方法

方法 說明
checkGuard() 用於實現守衛接口
getName() 返回此權限對象的名稱
toString() 返回此權限對象的字符串表示形式
從類java.lang.Object繼承的方法
clone()、finalize()、getClass()、notify()、notifyAll()、wait()、wait()、wait()

示例 1:

Java


// Java program to Create a New allow HttpTrace Permission
// Importing required network permission classes
import java.net.NetPermission;
import java.security.Permission;
// Main class
public class GFG {
    // Main driver method
    public static void main(String[] args)
    {
        // Try block to check for exceptions
        try {
            // Creating a new allowHttpTrace permission
            Permission permission
                = new NetPermission("allowHttpTrace");
            // Printing the name of the permission using
            // getName() method
            System.out.println(permission.getName());
            // Printing the class of the permission using
            // getClass method
            System.out.println(permission.getClass());
            // Printing the hash value of this permission
            // object using hashCode() method
            System.out.println(permission.hashCode());
        }
        // Catch block to handle the exceptions
        catch (Exception e) {
            // Print the line number where the exception occurred
            e.printStackTrace();
        }
    }
}

輸出:

allowHttpTrace
class java.net.NetPermission
303901780

示例 2:

Java


// Java Program to Create a New getCookieHandler Permission
// Importing required network permission classes
import java.net.NetPermission;
import java.security.Permission;
// Main Class
public class GFG {
    // Main driver method
    public static void main(String[] args)
    {
        // Try block to check for exceptions
        try {
            // Creating a new getCookieHandler permission
            Permission permission
                = new NetPermission("getCookieHandler");
            // Printing the name of the permission using
            // getName() method
            System.out.println(permission.getName());
            // Printing the class of the permission using
            // getClass method
            System.out.println(permission.getClass());
            // Printing the hash value of this permission
            // object using hashCode() method
            System.out.println(permission.hashCode());
        }
        // Catch block to handle the exceptions
        catch (Exception e) {
            // Print the line number where exception occurred
            // using printStackTrace() method
            e.printStackTrace();
        }
    }
}

輸出:

getCookieHandler
class java.net.NetPermission
1381623952

示例 3:

Java


// Java Program to Illustrate the Working of equals() Method
// Importing permission classes for networking
import java.net.NetPermission;
import java.security.Permission;
// Main class
public class GFG {
    // Main driver method
    public static void main(String[] args)
    {
        // Try block to check for exceptions
        try {
            // Creating a new getNetworkInformation
            // permission
            Permission Permission1 = new NetPermission(
                "getNetworkInformation");
            // Creating a new getProxySelector permission
            Permission Permission2
                = new NetPermission("getProxySelector");
            // Checking if both the given permissions are
            // equal or not using equals() method
            if (Permission1.equals(Permission2)) {
                // Print statement
                System.out.println(
                    "Both permission are equal");
            }
            // Statements differ
            else {
                // Print statement
                System.out.println(
                    "Both permission are not equal");
            }
        }
        // Catch block to handle the exceptions
        catch (Exception e) {
            // Print the line number where the exception occurred
            e.printStackTrace();
        }
    }
}

輸出:

Both permission are not equal


相關用法


注:本文由純淨天空篩選整理自abhinavjain194大神的英文原創作品 java.net.NetPermission Class in Java。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。