Risoluzione dei problemi generali - Amazon AppStream 2.0

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Risoluzione dei problemi generali

Di seguito sono riportati i problemi generali che potrebbero verificarsi quando si utilizza Amazon AppStream 2.0.

La federazione SAML non funziona. L'utente non è autorizzato a visualizzare le applicazioni AppStream 2.0.

Questo può accadere perché la policy inline incorporata per il ruolo IAM della federazione SAML 2.0 non include le autorizzazioni per l'ARN dello stack. Il ruolo IAM viene assunto dall'utente federato che accede a uno stack AppStream 2.0. Modifica le autorizzazioni del ruolo per includere l'ARN dello stack. Per ulteriori informazioni, consulta Integrazione di Amazon AppStream 2.0 con SAML 2.0 e Risoluzione dei problemi della federazione SAML 2.0 con AWS nella Guida per l'utente IAM.

Dopo aver creato federazioni da un portale ADFS, la sessione di streaming non inizia. Ricevo l'errore "Siamo spiacenti, la connessione è assente".

Imposta il Tipo di intestazione in arrivo della regola di attestazione per l'attributo SAML NameID su UPN e riprova la connessione.

Ricevo un errore URI di reindirizzamento non valido.

Questo errore si verifica a causa di un URL dello stato dello stack relay AppStream 2.0 non valido o non valido. Assicurati che lo stato di relay configurato nella configurazione della federazione sia lo stesso dello stack relay visualizzato nei dettagli dello stack tramite la console 2.0. AppStream Se sono uguali e il problema persiste, contattateci. AWS Support Per ulteriori informazioni, consulta Integrazione di Amazon AppStream 2.0 con SAML 2.0.

I miei sviluppatori di immagini e i parchi istanze non arrivano mai in stato di esecuzione. I miei server DNS sono in una directory Simple AD.

AppStream 2.0 si basa sui server DNS all'interno del VPC per restituire una risposta di dominio inesistente (NXDOMAIN) per i nomi di dominio locali che non esistono. Ciò consente all'interfaccia di rete gestita dalla versione AppStream 2.0 di comunicare con i server di gestione.

Quando crei una directory con Simple AD, AWS Directory Service crea due controller di dominio che funzionano anche come server DNS per tuo conto. Poiché i controller di dominio non forniscono la risposta NXDOMAIN, non possono essere utilizzati con la versione 2.0. AppStream

Ho attivato la persistenza delle impostazioni dell'applicazione per gli utenti, ma le impostazioni persistenti dell'applicazione non vengono salvate o caricate.

AppStream 2.0 salva automaticamente le impostazioni dell'applicazione create in determinate posizioni dell'istanza di Windows. Le impostazioni vengono salvate solo se l'applicazione le salva in una di queste sedi. Per un elenco delle sedi supportate, consulta Come funziona la persistenza delle impostazioni dell'applicazione. Se l'applicazione è configurata per il salvataggio in C:\Users\%username% e le impostazioni degli utenti per l'applicazione non sono persistenti tra le sessioni, il punto di montaggio potrebbe non essere creato. In questo modo si impedisce il salvataggio delle impostazioni nel file VHD che contiene le impostazioni persistenti dell'applicazione degli utenti.

Per risolvere il problema, eseguire queste fasi:

  1. Nell'istanza della parco istanze, aprire Esplora file e navigare nella directory del profilo utente in C:\Users\%username%.

  2. Confermare se questa directory contiene un collegamento simbolico e quindi eseguire una delle operazioni seguenti:

    • Se non è presente un collegamento simbolico, confermare che fa riferimento a D:\%username%.

    • Se non è disponibile un collegamento simbolico, provare a eliminare la directory C:\Users\%username%.

      Se non è possibile eliminare questa directory, identificare il file nella directory che sta impedendo la sua eliminazione e l'applicazione che ha creato il file. Quindi contattare il fornitore dell'applicazione per informazioni su come modificare le autorizzazioni del file o spostare il file.

      Se riesci a eliminare questa directory, contatta AWS Support per ulteriori indicazioni su come risolvere il problema. Per ulteriori informazioni, consulta Centro di AWS Support.

Ho abilitato la persistenza delle impostazioni delle app per gli utenti, ma per alcune app di streaming le password degli utenti non sono persistenti tra le sessioni.

Questo problema si verifica quando:

  • Gli utenti eseguono lo streaming di applicazioni quali Microsoft Outlook, che utilizzano l'API Microsoft Data Protection.

  • La persistenza delle impostazioni dell'app è abilitata per le istanze di streaming che non partecipano a domini Active Directory.

Nei casi in cui un'istanza di streaming non è aggiunta a un dominio Active Directory, l'utente Windows è diverso per ogni istanza del parco istanze. PhotonUser A causa del modo in cui funziona il modello di sicurezza DPAPI, le password degli utenti non vengono memorizzate in modo permanente per le applicazioni che utilizzano DPAPI in questo scenario. Nei casi in cui le istanze di streaming fanno parte di un dominio Active Directory e l'utente è un utente di dominio, il nome utente Windows è quello dell'utente collegato e le password degli utenti vengono memorizzate in modo permanente per le applicazioni che utilizzano DPAPI.

I dati di Google Chrome riempiono il file VHD che contiene le impostazioni persistenti dell'applicazione degli utenti. Ciò impedisce la persistenza delle impostazioni. Come posso gestire il profilo Chrome?

Per impostazione predefinita, Google Chrome memorizza sia i dati utente sia la cache del disco locale nel profilo utente di Windows. Per impedire che la cache del disco locale riempia il file VHD che contiene le impostazioni persistenti delle applicazioni utente, configura Chrome per salvare solo i dati utenti. A questo scopo, sul parco istanze, apri la riga di comando come amministratore e avvia Chrome con i seguenti parametri per modificare la posizione della cache del disco:

chrome.exe --disk-cache-dir C:\path-to-unsaved-location\

L'esecuzione di Chrome con questi parametri impedisce che la cache del disco venga mantenuta tra le sessioni AppStream 2.0.

Ho impostato un dominio personalizzato per le mie sessioni di streaming AppStream 2.0 integrate, ma i miei URL di streaming AppStream 2.0 non reindirizzano al mio dominio personalizzato.

Per risolvere questo problema, verifica che quando hai creato l'URL di streaming AppStream 2.0, hai sostituito l'endpoint AppStream 2.0 con il tuo dominio personalizzato. Per impostazione predefinita, gli URL di streaming AppStream 2.0 sono formattati come segue:

https://appstream2.region.aws.amazon.com/authenticate?parameters=authenticationcode

Per sostituire l'endpoint AppStream 2.0 predefinito nell'URL di streaming, sostituisci la https://appstream2. regione nell'URL con il tuo dominio personalizzato. Ad esempio, se il tuo dominio personalizzato è training.example.com, il nuovo URL di streaming deve seguire questo formato:

https://training.example.com/authenticate?parameters=authenticationcode

Per ulteriori informazioni sulla configurazione di domini personalizzati per le sessioni di streaming AppStream 2.0 integrate, consulta. Requisiti di configurazione per l'utilizzo di domini personalizzati

Ho lanciato un'app su una flotta AppStream 2.0 compatibile con smartcard e il numero di certificati disponibili per l'autenticazione è limitato (o nessuno).

Ciò accade quando l'applicazione viene avviata prima che il servizio di propagazione dei certificati sia in esecuzione.

Per risolvere questo problema, usa il PowerShell modulo Get-Service per interrogare lo stato del servizio di propagazione dei certificati e assicurati che sia in esecuzione prima di avviare l'applicazione.

Ad esempio, lo script seguente non avvierà l'applicazione finché il servizio di propagazione dei certificati non sarà in esecuzione:

$logFile = "$Env:TEMP\AS2\Logging\$(Get-Date -Format "yyyy-MM-dd-HH-mm-ss")_applaunch.log" New-Item -path $logfile -ItemType File -Force | Out-Null Function Write-Log { Param ([string]$message) $stamp = Get-Date -Format "yyyy/MM/dd HH:mm:ss" $logoutput = "$stamp $message" Add-content $logfile -value $logoutput } if (Get-Service -Name "CertPropSvc" | Where-Object -Property Status -eq Running) { Write-Log "The Certificate Propagation Service is running. Launching Application..." try { Start-Process -FilePath "Path to Application" -WindowStyle Maximized -ErrorAction Stop } catch { Write-Log "There was an error launching the application: $_" } } else { do { $status = Get-Service "CertPropSvc" | select-object -ExpandProperty Status Write-Log "The Certificate Propagation service status is currently $status" Start-Sleep -Seconds 2 } until (Get-Service -Name "CertPropSvc" | Where-Object -Property Status -eq Running) write-log "The Certificate Propagation Service is running. Launching Application..." try { Start-Process -FilePath "Path to Application" -WindowStyle Maximized -ErrorAction Stop } catch { Write-Log "There was an error launching the application: $_" } }

Il servizio Certification Propagation non si avvia sulla mia flotta 2.0 abilitata per smartcard. AppStream

Se il servizio di propagazione dei certificati non si avvia, il tipo di avvio del servizio potrebbe essere impostato su Disabilitato. Per risolvere questo problema, nel generatore di immagini AppStream 2.0 utilizzato per creare l'immagine del tuo parco macchine, avvia la Microsoft Management Console di Windows Services e assicurati che il tipo di avvio del servizio di propagazione dei certificati non sia impostato su Disabilitato.

Se il tipo di avvio non è impostato su Disabilitato e il servizio non si avvia ancora nella flotta AppStream 2.0, utilizza il PowerShell modulo Start-Service per avviare il servizio Certificate Propagation all'avvio dell'istanza del parco istanze.

Ad esempio, lo PowerShell script seguente avvierà il servizio se rileva che è in uno stato interrotto:

$logFile = "C:\AppStream\Logging\$(Get-Date -Format "yyyy-MM-dd-HH-mm-ss")_certpropcheck.log" New-Item -path $logfile -ItemType File -Force | Out-Null Function Write-Log { Param ([string]$message) $stamp = Get-Date -Format "yyyy/MM/dd HH:mm:ss" $logoutput = "$stamp $message" Add-content $logfile -value $logoutput } if (Get-Service -Name "CertPropSvc" | Where-Object -Property Status -eq Running) { Write-Log "The Certificate Propagation Service is running. Exiting..." Exit } else { do { if (Get-Service -Name "CertPropSvc" | Where-Object -Property Status -eq Stopped) { Write-Log "The Certificate Propagation Service is stopped, attepmting to start..." try { Start-Service -Name "CertPropSvc" -ErrorAction Stop } catch { Write-Log "There was a problem starting the service: $_" break } $status = Get-Service "CertPropSvc" | select-object -ExpandProperty Status Write-Log "The Certificate Propagation service status is currently $status" } else { $status = Get-Service "CertPropSvc" | select-object -ExpandProperty Status Write-Log "The Certificate Propagation service status is currently $status" break } } until (Get-Service -Name "CertPropSvc" | Where-Object -Property Status -eq Running) }