Partager via


HttpSessionState.SessionID Propriété

Définition

Obtient l’identificateur unique de la session.

public:
 property System::String ^ SessionID { System::String ^ get(); };
public string SessionID { get; }
member this.SessionID : string
Public ReadOnly Property SessionID As String

Valeur de propriété

Identificateur de session unique.

Exemples

L’exemple de code suivant montre un fichier Web.config qui configure l’état de session pour utiliser des identificateurs de session sans cookie. Pour plus d'informations, consultez la propriété IsCookieless.

<configuration>
  <system.web>
    <sessionState
      cookieless="true"
      regenerateExpiredSessionId="true"
      timeout="30" />
  </system.web>
</configuration>

Remarques

La SessionID propriété est utilisée pour identifier de manière unique un navigateur avec des données de session sur le serveur. La SessionID valeur est générée de manière aléatoire par ASP.NET et stockée dans un cookie de session sans expiration dans le navigateur. La SessionID valeur est ensuite envoyée dans un cookie avec chaque requête à l’application ASP.NET.

Si vous souhaitez désactiver l’utilisation de cookies dans votre application ASP.NET tout en utilisant l’état de session, vous pouvez configurer votre application pour stocker l’identificateur de session dans l’URL au lieu d’un cookie en définissant l’attribut cookieless de l’élément truede configuration sessionState sur ou UseUrisur , dans le fichier Web.config de votre application. Vous pouvez avoir ASP.NET déterminer si les cookies sont pris en charge par le navigateur en spécifiant une valeur de UseDeviceProfile pour l’attribut cookieless . Vous pouvez également avoir ASP.NET déterminer si les cookies sont activés pour le navigateur en spécifiant une valeur de AutoDetect pour l’attribut cookieless . Si les cookies sont pris en charge quand UseDeviceProfile est spécifié, ou activés quand AutoDetect est spécifié, l’identificateur de session est stocké dans un cookie ; sinon, l’identificateur de session sera stocké dans l’URL. Pour plus d'informations, consultez la propriété IsCookieless.

Le SessionID est envoyé entre le serveur et le navigateur en texte clair, soit dans un cookie, soit dans l’URL. Par conséquent, une source indésirable peut accéder à la session d’un autre utilisateur en obtenant la SessionID valeur et en l’incluant dans les requêtes adressées au serveur. Si vous stockez des informations privées ou sensibles dans un état de session, il est recommandé d’utiliser SSL pour chiffrer toute communication entre le navigateur et le serveur qui inclut .SessionID

Lors de l’utilisation de l’état de session basé sur les cookies, ASP.NET n’alloue pas de stockage pour les données de session tant que l’objet Session n’est pas utilisé. Par conséquent, un nouvel ID de session est généré pour chaque demande de page jusqu’à ce que l’objet de session soit accessible. Si votre application a besoin d’un ID de session statique pour l’ensemble de la session, vous pouvez implémenter la Session_Start méthode dans le fichier Global.asax de l’application et stocker des données dans l’objet Session pour corriger l’ID de session, ou vous pouvez utiliser du code dans une autre partie de votre application pour stocker explicitement des données dans l’objet Session .

Si votre application utilise l’état de session sans cookie, l’ID de session est généré sur la première vue de page et est conservé pour l’ensemble de la session.

S’applique à

Voir aussi