Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

(System.Security.SecurityException) dans un Socket.Connect ou Socket.Bind (de type System.Net.SocketPermission)

1 réponse
Avatar
herbert
Je veux juste connecter un TcpListener.

Sur mon poste de developpement, ça marche.
Sur un poste de test, l'exception est levée.

J'ai donc instancié une SocketPermission:
--------------------------------------------------------------
SocketPermission myPermissions = new
SocketPermission(System.Security.Permissions.PermissionState.Unrestricted);
ou
SocketPermission lesPermissions = new
SocketPermission(NetworkAccess.Accept, TransportType.Tcp,
"172.17.148.16", 56325);
--------------------------------------------------------------

mais ça ne marche pas mieux.

J'ai mis à jour le framework 1.1, avec le patch.
pas mieux.

Faut-il relier la SocketPermission avec la Socket (ou TcpListener) ?

merci de vos réponses.

1 réponse

Avatar
Paul Bacelar
"herbert" wrote in message
news:##
Je veux juste connecter un TcpListener.

Sur mon poste de developpement, ça marche.
Sur un poste de test, l'exception est levée.

J'ai donc instancié une SocketPermission:
--------------------------------------------------------------
SocketPermission myPermissions = new



SocketPermission(System.Security.Permissions.PermissionState.Unrestricted);
ou
SocketPermission lesPermissions = new
SocketPermission(NetworkAccess.Accept, TransportType.Tcp,
"172.17.148.16", 56325);
--------------------------------------------------------------

mais ça ne marche pas mieux.

J'ai mis à jour le framework 1.1, avec le patch.
pas mieux.

Faut-il relier la SocketPermission avec la Socket (ou TcpListener) ?

merci de vos réponses.



Le but de la class "SocketPermission" est de permettre une restriction des
droits des méthodes appelées ou de vérifier les droits du code appelant. Pas
de contourner la SandBox du FrameWork .NET.

En clair, vous pouvez vous enlever des droits, pas vous en donner.

Sur le poste de test, votre assembly semble ne pas avoir les permissions
FullTrust réservées aux applications dont les assemblies sont sur les
disques locaux. Vérifiez que vous lancez l'application depuis votre disque
et pas depuis un partage. Vérifiez dans le l'interface de configuration du
FrameWork .NET (voir dans les outils d'administration) que votre assembly
respect les critères qui font de votre assembly, un assembly éligible au
rang de FullTrusted.


--
Paul Bacelar