WEDL_AssignedAccess
Esta clase de proveedor de Instrumental de administración de Windows (WMI) configura las opciones de acceso asignado.
Sintaxis
class WEDL_AssignedAccess {
[Key] string UserSID;
[Read, Write] string AppUserModelId;
[Read] sint32 Status;
};
Miembros
En las tablas siguientes se enumeran todos los métodos y propiedades que pertenecen a esta clase.
Métodos
Esta clase no contiene métodos.
Propiedades
Propiedad | Tipo de datos | Calificadores | Descripción |
---|---|---|---|
UserSID | string | [key] | Identificador de seguridad (SID) de la cuenta de usuario que desea usar como cuenta de acceso asignada. |
AppUserModelId | string | [lectura, escritura] | Identificador de modelo de usuario de aplicación (AUMID) de la aplicación de Windows que se iniciará para la cuenta de acceso asignada. |
Estado | Boolean | ninguno | Indica el estado actual de la configuración de acceso asignado. |
Value | Descripción |
---|---|
0 | Se configura una cuenta válida, pero no se especifica ninguna aplicación de Windows. El acceso asignado no está habilitado. |
1 | El acceso asignado está habilitado. |
0x100 | Error userSID: no se encuentra la cuenta. |
0x103 | Error de UserSID: el perfil de cuenta no existe. |
0x200 | Error appUserModelID: no se encuentra la aplicación de Windows. |
0x201 | Error del programador de tareas: no se pudo programar la tarea. Asegúrese de que el servicio Programador de tareas se está ejecutando. |
0xffffffff | Error no especificado. |
Comentarios
Los cambios en el acceso asignado no afectan a ninguna sesión que haya iniciado sesión actualmente; debe cerrar la sesión y volver a iniciar sesión.
Ejemplo
El siguiente script de Windows PowerShell muestra cómo usar esta clase para configurar una cuenta de acceso asignada.
#
#---Define variables---
#
$COMPUTER = "localhost"
$NAMESPACE = "root\standardcimv2\embedded"
# Define the assigned access account.
# To use a different account, change $AssignedAccessAccount to a user account that is present on your device.
$AssignedAccessAccount = "KioskAccount"
# Define the Windows app to launch, in this example, use the Application Model User ID (AUMID) for Windows Calculator.
# To use a different Windows app, change $AppAUMID to the AUMID of the Windows app to launch.
# The Windows app must be installed for the account.
$AppAUMID = "Microsoft.WindowsCalculator_8wekyb3d8bbwe!App"
#
#---Define helper functions---
#
function Get-UsernameSID($AccountName) {
# This function retrieves the SID for a user account on a machine.
# This function does not check to verify that the user account actually exists.
$NTUserObject = New-Object System.Security.Principal.NTAccount($AccountName)
$NTUserSID = $NTUserObject.Translate([System.Security.Principal.SecurityIdentifier])
return $NTUserSID.Value
}
#
#---Set up the new assigned access account---
#
# Get the SID for the assigned access account.
$AssignedAccessUserSID = Get-UsernameSID($AssignedAccessAccount)
# Check to see if an assigned access account is already set up, and if so, clear it.
$AssignedAccessConfig = get-WMIObject -namespace $NAMESPACE -computer $COMPUTER -class WEDL_AssignedAccess
if ($AssignedAccessConfig) {
# Configuration already exists. Delete it so that we can create a new one, since only one assigned access account can be set up at a time.
$AssignedAccessConfig.delete();
}
# Configure assigned access to launch the specified Windows app for the specified account.
Set-WmiInstance -class WEDL_AssignedAccess -ComputerName $COMPUTER -Namespace $NAMESPACE -Arguments @{
UserSID = $AssignedAccessUserSID;
AppUserModelId = $AppAUMID
} | Out-Null;
# Confirm that the settings were created properly.
$AssignedAccessConfig = get-WMIObject -namespace $NAMESPACE -computer $COMPUTER -class WEDL_AssignedAccess
if ($AssignedAccessConfig) {
"Set up assigned access for the " + $AssignedAccessAccount + " account."
" UserSID = " + $AssignedAccessConfig.UserSid
" AppModelId = " + $AssignedAccessConfig.AppUserModelId
} else {
"Could not set up assigned access account."
}
Requisitos
Edición de Windows | Compatible |
---|---|
Windows Home | No |
Windows Pro | No |
Windows Enterprise | Sí |
Windows Education | Sí |
Windows IoT Enterprise | Sí |