<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>SAML2 on Giovanni Nicosia</title>
    <link>https://giovanninicosia.dev/tags/saml2/</link>
    <description>Recent content in SAML2 on Giovanni Nicosia</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Fri, 06 Mar 2026 00:00:00 +0100</lastBuildDate>
    <atom:link href="https://giovanninicosia.dev/tags/saml2/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>ESCAPE Seminars — QR Attendance System</title>
      <link>https://giovanninicosia.dev/projects/escape-qr/</link>
      <pubDate>Fri, 06 Mar 2026 00:00:00 +0100</pubDate>
      <guid>https://giovanninicosia.dev/projects/escape-qr/</guid>
      <description>&lt;p&gt;The &lt;strong&gt;ESCAPE Seminars&lt;/strong&gt; attendance system was built to automate registration and presence tracking for a seminar series at Politecnico di Torino. Attendees authenticate using their &lt;strong&gt;institutional PoliTO credentials&lt;/strong&gt; through a SAML2 flow backed by a &lt;strong&gt;Keycloak&lt;/strong&gt; Identity Provider, ensuring that only enrolled students can register — without storing passwords in the application.&lt;/p&gt;&#xA;&lt;p&gt;The backend is a &lt;strong&gt;Django REST API&lt;/strong&gt; connected to a &lt;strong&gt;PostgreSQL&lt;/strong&gt; database. Upon successful authentication, the system generates a unique QR code for each session and user pair. Organizers can scan codes in real time via a dedicated endpoint, and an admin dashboard provides attendance summaries, CSV exports, and per-seminar statistics.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
