Поделиться через


Собственные разрешения API Wi-Fi

Вызов API Собственного Wi-Fi может завершиться ошибкой, если вызывающий объект не имеет достаточных разрешений для выполнения запрошенной операции.

Разрешения хранятся в списках управления доступом на уровне пользователей (DACL), связанных с WLAN_SECURABLE_OBJECT. Дополнительные сведения о списках DACCl и защищаемых объектах см. в разделе Управление доступом к объекту DACLs.

В следующей таблице показаны собственные функции Wi-Fi, которые используют защищаемые объекты, чтобы определить, имеет ли вызывающий объект достаточные разрешения для выполнения запрошенной операции. Здесь также показаны защищаемые объекты, используемые каждой функцией.

Функция Защищаемый объект
WlanGetFilterList, WlanSetFilterList
  • wlan_secure_deny_list
  • wlan_secure_permit_list
WlanIhvControl
  • wlan_secure_ihv_control
WlanQueryAutoConfigParameter, WlanSetAutoConfigParameter
  • wlan_secure_show_denied
WlanQueryInterface, WlanSetInterface
  • 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
WlanSetProfileList, WlanSetProfilePosition
  • wlan_secure_all_user_profiles_order

 

Прежде чем одна из указанных выше функций завершит свою операцию, функция получает список DACL, хранящийся в соответствующем защищаемом объекте. Затем функция проверяет DACL, чтобы узнать, имеет ли вызывающий объект достаточные разрешения. Функции WlanGet* и WlanQuery* требуют, чтобы DACL содержал запись управления доступом (ACE), которая предоставляет маркер доступа вызывающего потока, WLAN_READ_ACCESS функции. Для функций WlanSet* требуется ACE, предоставляющий маркер доступа вызывающего потока WLAN_WRITE_ACCESS. Если вызывающий объект не имеет достаточных разрешений, вызов функции завершается ошибкой ERROR_ACCESS_DENIED.

Каждый защищаемый объект по умолчанию имеет список DACL. Разрешения по умолчанию, хранящиеся в DACL, можно изменить с помощью функции WlanSetSecuritySettings . Чтобы определить действующие права пользователя, необходимые для выполнения операции в определенной системе, вызовите WlanGetSecuritySettings.

Профили всех пользователей имеют дополнительные разрешения, связанные с самим профилем. Разрешения для профиля всех пользователей устанавливаются при создании или изменении профиля с помощью WlanSetProfile или WlanSaveTemporaryProfile. Параметр strAllUserProfileSecurity указывает необходимые разрешения для изменения профиля, удаления профиля или подключения к сети с помощью профиля. Для удаления или изменения профиля требуется разрешение WLAN_WRITE_ACCESS. Для подключения к сети с помощью профиля требуется разрешение WLAN_EXECUTE_ACCESS.

**Windows XP с пакетом обновления 3 (SP3) и API беспроводной локальной сети для Windows XP с пакетом обновления 2 (SP2): ** Функции WlanGetSecuritySettings и WlanSetSecuritySettings не поддерживаются. Параметр strAllUserProfileSecurity не используется.

Управление доступом к объекту служб DACLs

WLAN_SECURABLE_OBJECT