An authentication system, comprising: an authentication portal server having at least one processor configured to: receive an access request and access credentials from a first user of a client computing device; determine that the access credentials are valid; and in response to determining that the access credentials are valid, authenticate the user and generate an authentication token for the user; and a connection server comprising at least one processor configured to: receive a request of the user to access a first virtual desktop of a plurality of virtual desktops on a host computing device; receive one of the authentication token and a reference to the authentication token, wherein the authentication token is indicative that the user was successfully authenticated by the authentication portal server based on user credentials; determine that the user has permission to access the first virtual desktop; generate smartcard credentials for the user, the smartcard credentials comprising a private key and a digital certificate with a public key for the user; store the smartcard credentials in a virtual smartcard; associate the virtual smartcard with the first virtual desktop to allow the user to access the first virtual desktop using the smartcard credentials without entering additional access credentials; receive a request from the user to access a second virtual desktop on the host computing device, the second virtual desktop having different access permissions from the first virtual desktop; determine that the user has permission to access the second virtual desktop from the authentication token or a reference to the authentication token; and associate the virtual smartcard with the second virtual desktop to allow the user to also access the second virtual desktop using the smartcard credentials without entering additional access credentials. an authentication portal server having at least one processor configured to: receive an access request and access credentials from a first user of a client computing device; determine that the access credentials are valid; and in response to determining that the access credentials are valid, authenticate the user and generate an authentication token for the user; and receive an access request and access credentials from a first user of a client computing device; determine that the access credentials are valid; and in response to determining that the access credentials are valid, authenticate the user and generate an authentication token for the user; and a connection server comprising at least one processor configured to: receive a request of the user to access a first virtual desktop of a plurality of virtual desktops on a host computing device; receive one of the authentication token and a reference to the authentication token, wherein the authentication token is indicative that the user was successfully authenticated by the authentication portal server based on user credentials; determine that the user has permission to access the first virtual desktop; generate smartcard credentials for the user, the smartcard credentials comprising a private key and a digital certificate with a public key for the user; store the smartcard credentials in a virtual smartcard; associate the virtual smartcard with the first virtual desktop to allow the user to access the first virtual desktop using the smartcard credentials without entering additional access credentials; receive a request from the user to access a second virtual desktop on the host computing device, the second virtual desktop having different access permissions from the first virtual desktop; determine that the user has permission to access the second virtual desktop from the authentication token or a reference to the authentication token; and associate the virtual smartcard with the second virtual desktop to allow the user to also access the second virtual desktop using the smartcard credentials without entering additional access credentials. receive a request of the user to access a first virtual desktop of a plurality of virtual desktops on a host computing device; receive one of the authentication token and a reference to the authentication token, wherein the authentication token is indicative that the user was successfully authenticated by the authentication portal server based on user credentials; determine that the user has permission to access the first virtual desktop; generate smartcard credentials for the user, the smartcard credentials comprising a private key and a digital certificate with a public key for the user; store the smartcard credentials in a virtual smartcard; associate the virtual smartcard with the first virtual desktop to allow the user to access the first virtual desktop using the smartcard credentials without entering additional access credentials; receive a request from the user to access a second virtual desktop on the host computing device, the second virtual desktop having different access permissions from the first virtual desktop; determine that the user has permission to access the second virtual desktop from the authentication token or a reference to the authentication token; and associate the virtual smartcard with the second virtual desktop to allow the user to also access the second virtual desktop using the smartcard credentials without entering additional access credentials.