Claves del Registro de autenticación
Cuando instala un proveedor de red, la aplicación debe crear las claves del Registro y los valores descritos en este tema. Estas claves y valores proporcionan información al MPR sobre los proveedores de red instalados en el sistema. El MPR comprueba estas claves cuando se inicia y carga los archivos DLL del proveedor de red que encuentra.
Antes de crear un conjunto de claves para almacenar información sobre el proveedor de red, debe agregar el nombre del proveedor de red a la clave de pedido. Esta clave es una subclave de la clave siguiente:
HKEY_LOCAL_MACHINE
SYSTEM
CurrentControlSet
Control
NetworkProvider
El orden clave contiene un valor único, ProviderOrder, que enumera los proveedores instalados y especifica el orden en el que se deben probar durante las operaciones que se recorren a través de proveedores hasta que se encuentra un proveedor de aceptación.
El valor ProviderOrder contiene una lista separada por comas de nombres de clave. Cada nombre de clave de ProviderOrder identifica un proveedor de red. Cuando MPR recorre los proveedores, los llama en el orden en que aparecen en esta lista.
El nombre del proveedor establecido en ProviderOrder también debe usarse como nombre de la clave del Registro que contiene información sobre ese proveedor. Las claves del Registro específicas del proveedor se crean como subclaves de la clave siguiente:
HKEY_LOCAL_MACHINE
SYSTEM
CurrentControlSet
Services
En otras palabras, los nombres de proveedor especificados en ProviderOrder son la ruta de acceso al registro de las claves específicas del proveedor de red, en relación con la siguiente ruta de acceso:
HKEY_LOCAL_MACHINE
SYSTEM
CurrentControlSet
Services
Cuando se instala el servicio de proveedor de red, la aplicación de instalación debe agregar una clave de la siguiente manera:
HKEY_LOCAL_MACHINE
SYSTEM
CurrentControlSet
Services
ProviderName
Donde ProviderName es el nombre del proveedor de red tal y como se especifica en el valor ProviderOrder de de la clave de orden. El valor de Group en ProviderName key debe establecerse en "NetworkProvider". Esto identifica el servicio como estar en el grupo de proveedores de red.
También debe crear una subclave de ProviderName, networkprovider. Esta clave contiene los siguientes valores que describen el proveedor de red.
Valor | Descripción |
---|---|
nombre de |
Contiene el nombre del proveedor. Este nombre se muestra al usuario como el nombre de la red en los cuadros de diálogo examinar y debe coincidir con el campo de lpProvider devuelto en estructuras de NETRESOURCE. Este nombre debe ser una variación del nombre del producto, preferiblemente con alguna indicación de la empresa también, para que sea clara y única. "MS-LanMan" por ejemplo es un buen nombre, mientras que "La red" sería una mala elección. |
ProviderPath |
Contiene la ruta de acceso completa del archivo DLL que implementa el proveedor de red. MPR llama LoadLibrary en esta ruta de acceso. |
Los siguientes valores solo los usan los proveedores de red que admiten las funciones de administración de credenciales, NPLogonNotify y NPPasswordChangeNotify.
Valor | Descripción |
---|---|
de clase |
Un DWORD que identifica la clase o el tipo de funcionalidad de proveedor que admite este proveedor. Los valores se pueden unir mediante el operador OR cuando corresponda. Los valores válidos para esto son WN_NETWORK_CLASS, WN_CREDENTIAL_CLASS, WN_PRIMARY_AUTHENT_CLASS y WN_SERVICE_CLASS. Aunque un proveedor puede admitir la funcionalidad del autenticador principal, se usará otro medio para determinar qué autenticador es principal. Windows XP/2000: no se admite la conmutación de autenticadores principales, por lo que este valor se omite. |
AuthentProviderPath |
Este es el nombre de archivo completo para el archivo DLL que exporta las funciones de administración de credenciales. Este valor es útil (pero no necesario) solo cuando el proveedor se identifica como un proveedor de CREDENTIAL_CLASS o PRIMARY_AUTHENT_CLASS. Si este valor no está presente para un proveedor de esta clase, se espera que las funciones de administración de credenciales se exportan desde el archivo DLL identificado por el valor ProviderPath. Este valor solo se usa si es conveniente empaquetar las funciones de red y las funciones del administrador de credenciales en archivos DLL independientes. |
Además de los valores usados para registrar proveedores de red y administradores de credenciales, puede agregar un valor al registro para registrar un archivo DLL para recibir notificaciones de conexión. Para ello, cree un valor de REG_EXPAND_SZ en la clave siguiente:
HKEY_LOCAL_MACHINE
SYSTEM
CurrentControlSet
Control
NetworkProvider
Notifyees
Este valor debe especificar la ruta de acceso a un archivo DLL que implementa la API de notificación de conexión de . El nombre de este valor puede ser cualquier cosa que desee, siempre y cuando no entre en conflicto con nombres de valor preexistentes.
Ejemplo
En el ejemplo siguiente se muestran las claves del Registro de un sistema que tiene dos proveedores de red instalados: LanmanWorkStation y AnotherNetSvc. AnotherNetSvc también es un administrador de credenciales. En el ejemplo, los nombres de clave son en negrita y los nombres de valor son cursiva.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\
ProviderOrder = "LanmanWorkStation,AnotherNetSvc"
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\Notifyees
MyNotifyApp = "c:\connect\connect.dll"
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkStation\
Group = "NetworkProvider"
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkStation\NetworkProvider
Nombre = "NT LanMan"ProviderPath = "ntlanman.dll"
clase = 0x00000001 (WN_NETWORK_CLASS)
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AnotherNetSvc\
Group = "NetworkProvider"
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\AnotherNetSvc\NetworkProvider
Nombre = "Otra red"ProviderPath = "c:\another\anet.dll"
clase = 0x00000003 (WN_NETWORK_CLASS | WN_CREDENTIAL_CLASS)
AuthentProviderPath = "c:\another\anetCM.dll"