<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Session handling on sillysky.net</title>
    <link>https://sillysky.net/docs/nyssr/records/session-handling/</link>
    <description>Recent content in Session handling on sillysky.net</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    <lastBuildDate>Tue, 09 Dec 2025 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://sillysky.net/docs/nyssr/records/session-handling/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>CRecordSessionCreateRight</title>
      <link>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessioncreateright/</link>
      <pubDate>Tue, 09 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessioncreateright/</guid>
      <description>With this request a new permission is stored in the database. This new right can then be assigned to users or roles by the administrator.&#xA;This message belongs to the Session Manager API.&#xA;The message is part of the kernel.&#xA;{ &#34;id&#34;: &#34;4b2bf3f8-7406-4829-9c1c-6f4c14188356&#34;, &#34;name&#34;: &#34;SESSION_CREATE_RIGHT&#34;, &#34;description&#34;: &#34;Create a new right.&#34;, &#34;slots&#34;: [ { &#34;key&#34;: &#34;right&#34;, &#34;name&#34;: &#34;RIGHT&#34;, &#34;direction&#34;: &#34;REQUEST&#34;, &#34;presenceConstraint&#34;: &#34;MANDATORY&#34;, &#34;type&#34;: &#34;STRING&#34;, &#34;description&#34;: &#34;The new right to add.&#34; }, { &#34;</description>
    </item>
    <item>
      <title>CRecordSessionExpired</title>
      <link>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessionexpired/</link>
      <pubDate>Tue, 09 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessionexpired/</guid>
      <description>In nyssr.net, when a session token expires or the session is closed, a broadcast is sent to all nodes.&#xA;You can register an observer for this message to receive it directly.&#xA;This message belongs to the session manager API.&#xA;It is part of the kernel.&#xA;{ &#34;id&#34;: &#34;274f6cd9-f1fe-4973-9f0e-fd26db19d276&#34;, &#34;name&#34;: &#34;SESSION_EXPIRED&#34;, &#34;description&#34;: &#34;A session has been expired due to inactivity.&#34;, &#34;isNanoService&#34;: &#34;true&#34;, &#34;namespaces&#34;: &#34;SYSTEM&#34;, &#34;slots&#34;: [ ] } Usage Install the observer The observer for receiving the message is easiest to set up by handling the CRecordStartTarget message.</description>
    </item>
    <item>
      <title>CRecordSessionGetLongToken</title>
      <link>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessiongetlongtoken/</link>
      <pubDate>Tue, 09 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessiongetlongtoken/</guid>
      <description>nyssr.net supports two types of session tokens: a long token with data and a short token without data. If you want to exchange a short token for a long token, this message can be used to retrieve the long token from the SessionManager.&#xA;This message belongs to the session manager API.&#xA;It is part of the kernel.&#xA;{ &#34;id&#34;: &#34;bb156b98-b587-4e47-8c3a-eba8f1f512b8&#34;, &#34;name&#34;: &#34;SESSION_GET_LONG_TOKEN&#34;, &#34;description&#34;: &#34;Get a long session token with a short session token.</description>
    </item>
    <item>
      <title>CRecordSessionLogin</title>
      <link>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessionlogin/</link>
      <pubDate>Tue, 09 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessionlogin/</guid>
      <description>This record is used for the login of a user.&#xA;This message belongs to the Session Manager API.&#xA;It is part of the kernel.&#xA;{ &#34;id&#34;: &#34;a8c83b58-a567-4eb9-b3b4-ce568899a696&#34;, &#34;name&#34;: &#34;SESSION_LOGIN&#34;, &#34;description&#34;: &#34;LogIn.&#34;, &#34;slots&#34;: [ { &#34;key&#34;: &#34;userId&#34;, &#34;name&#34;: &#34;USER_ID&#34;, &#34;direction&#34;: &#34;REQUEST&#34;, &#34;presenceConstraint&#34;: &#34;MANDATORY&#34;, &#34;type&#34;: &#34;STRING&#34;, &#34;description&#34;: &#34;The user id.&#34; }, { &#34;key&#34;: &#34;pw&#34;, &#34;name&#34;: &#34;PASSWORD&#34;, &#34;direction&#34;: &#34;REQUEST&#34;, &#34;presenceConstraint&#34;: &#34;MANDATORY&#34;, &#34;type&#34;: &#34;STRING&#34;, &#34;description&#34;: &#34;The base64 encoded hash (SHA384) of the password.&#34; } ] } Usage Sending the request You need the microservice ID of the session manager:</description>
    </item>
    <item>
      <title>CRecordSessionLogout</title>
      <link>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessionlogout/</link>
      <pubDate>Tue, 09 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessionlogout/</guid>
      <description>Quit the session.&#xA;This message belongs to the session manager API.&#xA;It is part of the kernel.&#xA;{ &#34;id&#34;: &#34;7f736870-b41b-48ea-9220-6f104cae17d3&#34;, &#34;name&#34;: &#34;SESSION_LOGOUT&#34;, &#34;isNanoService: &#34;false&#34;, &#34;type&#34;: &#34;REQUEST&#34;, &#34;description&#34;: &#34;Close the session.&#34;, &#34;slots&#34;: [ ] } Usage Sending the request You need the microservice ID of the session manager:&#xA;public static final IId SESSION_MICROSERVICE_ID = CIdFactory.fromObject(&#34;ccf168c1-f18b-4229-85f9-24461a19ee6a&#34;); To close the session, we need the token we received when we logged in.&#xA;private void closeSession(final byte[] aToken) throws CException { final CEnvelope env = CEnvelope.</description>
    </item>
    <item>
      <title>CRecordSessionManagementAvailable</title>
      <link>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessionmanagementavailable/</link>
      <pubDate>Tue, 09 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessionmanagementavailable/</guid>
      <description>The message CRecordSessionManagementAvailable is an announcement and is sent to all nodes via broadcast. To receive it, an observer must be installed on the nanoservice of the same name in the SYSTEM namespace.&#xA;This message belongs to the session manager API.&#xA;It is part of the kernel.&#xA;{ &#34;id&#34;: &#34;ed0319bd-b50c-49e1-ade7-d9d7bcb67242&#34;, &#34;name&#34;: &#34;SESSION_MANAGEMENT_AVAILABLE&#34;, &#34;description&#34;: &#34;Broadcast: The session management is now available.&#34;, &#34;isNanoService&#34;: &#34;true&#34;, &#34;namespaces&#34;: &#34;SYSTEM&#34;, &#34;slots&#34;: [ { &#34;key&#34;: &#34;av&#34;, &#34;name&#34;: &#34;</description>
    </item>
    <item>
      <title>CRecordSessionValidate</title>
      <link>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessionvalidate/</link>
      <pubDate>Tue, 09 Dec 2025 00:00:00 +0000</pubDate>
      <guid>https://sillysky.net/docs/nyssr/records/session-handling/crecordsessionvalidate/</guid>
      <description>This record is needed when a session token we received from a user request is to be checked for validity. With the response we also receive the user ID and a list with the rights of the user.&#xA;This message belongs to the session manager API. It is part of the kernel.&#xA;{ &#34;id&#34;: &#34;deb4b364-0890-4380-8c36-a142fcb29034&#34;, &#34;name&#34;: &#34;SESSION_VALIDATE&#34;, &#34;description&#34;: &#34;Validate a token.&#34;, &#34;slots&#34;: [ { &#34;key&#34;: &#34;userId&#34;, &#34;name&#34;: &#34;USER_ID&#34;, &#34;direction&#34;: &#34;RESPONSE&#34;, &#34;</description>
    </item>
  </channel>
</rss>
