共用方式為


原生 Wifi API 許可權

當呼叫端沒有足夠的許可權來執行要求的作業時,原生 Wifi API 呼叫可能會失敗。

權限會儲存在與 WLAN_SECURABLE_OBJECT相關聯的 任意訪問控制清單 (DACL) 中。 如需 DACL 和安全性實體物件的詳細資訊,請參閱 DACLs 如何控制物件存取

下表顯示使用安全性實體物件的 Native Wifi 函式,以判斷呼叫端是否有足夠的許可權可執行要求的作業。 它也會顯示每個函式所使用的安全性實體物件。

功能 安全性實體物件
WlanGetFilterListWlanSetFilterList
  • wlan_secure_deny_list
  • wlan_secure_permit_list
WlanIhvControl
  • wlan_secure_ihv_control
WlanQueryAutoConfigParameterWlanSetAutoConfigParameter
  • wlan_secure_show_denied
WlanQueryInterfaceWlanSetInterface
  • wlan_secure_ac_enabled
  • wlan_secure_bc_scan_enabled
  • wlan_secure_bss_type
  • wlan_secure_current_operation_mode
  • wlan_secure_interface_properties
  • wlan_secure_media_streaming_mode_enabled
WlanSetProfile
  • wlan_secure_add_new_all_user_profiles
  • wlan_secure_add_new_per_user_profiles
WlanSetProfileListWlanSetProfilePosition
  • wlan_secure_all_user_profiles_order

 

在上述其中一個具名函式完成其作業之前,函式會擷取儲存在適當安全性實體物件中的DACL。 然後函式會檢查 DACL,以查看呼叫端是否有足夠的許可權。 WlanGet* 和 WlanQuery* 函式要求 DACL 包含 訪問控制專案 (ACE),以授與呼叫線程WLAN_READ_ACCESS函式 存取令牌。 WlanSet* 函式需要 ACE,以授與呼叫線程的存取令牌WLAN_WRITE_ACCESS。 如果呼叫端沒有足夠的許可權,函式呼叫就會失敗,並出現錯誤ERROR_ACCESS_DENIED。

每個安全性實體對象預設都會有與其相關聯的 DACL。 您可以使用 WlanSetSecuritySettings 函式來變更儲存在 DACL 中的預設許可權。 若要判斷在特定系統上執行作業所需的有效用戶權力,請呼叫 WlanGetSecuritySettings

所有使用者配置檔都有與配置檔本身相關聯的其他許可權。 使用 WlanSetProfileWlanSaveTemporaryProfile建立或修改配置檔時,就會建立所有使用者配置檔的許可權。 strAllUserProfileSecurity 參數會指定修改設定檔、刪除配置檔或使用設定檔連線到網路所需的許可權。 刪除或修改配置檔需要WLAN_WRITE_ACCESS許可權。 使用配置檔連線到網路需要WLAN_EXECUTE_ACCESS許可權。

**Windows XP with SP3 and Wireless LAN API for Windows XP with SP2: ** 不支援 WlanGetSecuritySettingsWlanSetSecuritySettings 函式。 不使用 strAllUserProfileSecurity 參數。

DACL 如何控制對物件 的存取

WLAN_SECURABLE_OBJECT