<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://icontemp.com/wiki/phpprimer/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://icontemp.com/wiki/phpprimer/feed.php">
        <title>PHP Primer for the AI Era - security_fundamentals</title>
        <description>A PHP Guide for Humans</description>
        <link>https://icontemp.com/wiki/phpprimer/</link>
        <image rdf:resource="https://icontemp.com/wiki/phpprimer/lib/exe/fetch.php?media=wiki:dokuwiki.svg" />
       <dc:date>2026-06-07T21:27:47+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:authorization_and_access_control&amp;rev=1775431529&amp;do=diff"/>
                <rdf:li rdf:resource="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_database_safety&amp;rev=1775431500&amp;do=diff"/>
                <rdf:li rdf:resource="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_escaping_and_output_encoding&amp;rev=1775431571&amp;do=diff"/>
                <rdf:li rdf:resource="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_input_validation&amp;rev=1775431583&amp;do=diff"/>
                <rdf:li rdf:resource="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_keys_tokens_and_environment_boundaries&amp;rev=1775431515&amp;do=diff"/>
                <rdf:li rdf:resource="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_password_handling&amp;rev=1775431558&amp;do=diff"/>
                <rdf:li rdf:resource="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_safe_defaults&amp;rev=1775431706&amp;do=diff"/>
                <rdf:li rdf:resource="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_secure_session_practices&amp;rev=1775431544&amp;do=diff"/>
                <rdf:li rdf:resource="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_security_fundamentals_summary&amp;rev=1775431467&amp;do=diff"/>
                <rdf:li rdf:resource="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:start&amp;rev=1775319188&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://icontemp.com/wiki/phpprimer/lib/exe/fetch.php?media=wiki:dokuwiki.svg">
        <title>PHP Primer for the AI Era</title>
        <link>https://icontemp.com/wiki/phpprimer/</link>
        <url>https://icontemp.com/wiki/phpprimer/lib/exe/fetch.php?media=wiki:dokuwiki.svg</url>
    </image>
    <item rdf:about="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:authorization_and_access_control&amp;rev=1775431529&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T23:25:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>6. Authorization &amp; Access Control — Keeping Capabilities in Their Lane</title>
        <link>https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:authorization_and_access_control&amp;rev=1775431529&amp;do=diff</link>
        <description>6. Authorization &amp; Access Control — Keeping Capabilities in Their Lane

Authentication answers who the user is.

Authorization answers what the user can do.

A secure system treats capabilities as boundaries 
— not conveniences.

Every action, every resource, every piece of data has a lane,</description>
    </item>
    <item rdf:about="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_database_safety&amp;rev=1775431500&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T23:25:00+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>8. Database Safety — Parameterization, Boundaries, and Least Privilege</title>
        <link>https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_database_safety&amp;rev=1775431500&amp;do=diff</link>
        <description>8. Database Safety — Parameterization, Boundaries, and Least Privilege

A database is not just storage.

It is a boundary 

— one of the most sensitive in the entire system.

Security comes from treating the database as a separate trust domain,</description>
    </item>
    <item rdf:about="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_escaping_and_output_encoding&amp;rev=1775431571&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T23:26:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>3. Escaping and Output Encoding — Keeping Untrusted Data in Its Place</title>
        <link>https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_escaping_and_output_encoding&amp;rev=1775431571&amp;do=diff</link>
        <description>3. Escaping and Output Encoding — Keeping Untrusted Data in Its Place

Once untrusted data enters the system, it must be handled with care.

Validation shapes the data 

— but escaping determines where that data is allowed to go.

Security is not just about rejecting bad input.</description>
    </item>
    <item rdf:about="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_input_validation&amp;rev=1775431583&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T23:26:23+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>2. Input Validation &amp; Data Shape — The First Security Boundary</title>
        <link>https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_input_validation&amp;rev=1775431583&amp;do=diff</link>
        <description>2. Input Validation &amp; Data Shape — The First Security Boundary

This page builds directly on the previous idea that security begins with predictable shape.

Security begins at the boundary.

Before escaping, before hashing, before permissions, before anything else</description>
    </item>
    <item rdf:about="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_keys_tokens_and_environment_boundaries&amp;rev=1775431515&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T23:25:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>7. Handling Secrets — Keys, Tokens, and Environment Boundaries</title>
        <link>https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_keys_tokens_and_environment_boundaries&amp;rev=1775431515&amp;do=diff</link>
        <description>7. Handling Secrets — Keys, Tokens, and Environment Boundaries

Secrets are high‑value, high‑risk pieces of information that must be protected with clear boundaries.

Secrets are not configuration, settings, or code.

They include:

	* API keys</description>
    </item>
    <item rdf:about="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_password_handling&amp;rev=1775431558&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T23:25:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>4. Password Handling — Modern, Safe, and Simple</title>
        <link>https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_password_handling&amp;rev=1775431558&amp;do=diff</link>
        <description>4. Password Handling — Modern, Safe, and Simple

Passwords are more than strings.

They are secrets — and secrets require careful handling.

Modern PHP gives us safe, simple tools for password hashing and verification.

The danger comes not from complexity, but from invention.</description>
    </item>
    <item rdf:about="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_safe_defaults&amp;rev=1775431706&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T23:28:26+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>1. Safe Defaults in Modern PHP — A Foundation for Secure Code</title>
        <link>https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_safe_defaults&amp;rev=1775431706&amp;do=diff</link>
        <description>1. Safe Defaults in Modern PHP — A Foundation for Secure Code

Security is not a checklist.

It’s a posture 
— a way of writing code that 
reduces risk before vulnerabilities even have a chance to appear.

Modern PHP gives us tools that 

make secure behavior the default,</description>
    </item>
    <item rdf:about="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_secure_session_practices&amp;rev=1775431544&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T23:25:44+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>5. Secure Session Practices — Predictable, Boundaried, and Safe</title>
        <link>https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_secure_session_practices&amp;rev=1775431544&amp;do=diff</link>
        <description>5. Secure Session Practices — Predictable, Boundaried, and Safe

Once identity is established, the next question is: 

how do we maintain it safely?

A session is a temporary identity.

It represents a user between requests 

— nothing more, nothing less.</description>
    </item>
    <item rdf:about="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_security_fundamentals_summary&amp;rev=1775431467&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-05T23:24:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>9. Security Fundamentals — A Calm Summary</title>
        <link>https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:php_security_fundamentals_summary&amp;rev=1775431467&amp;do=diff</link>
        <description>9. Security Fundamentals — A Calm Summary

Security is not a checklist.
It is a posture 
— a way of thinking about boundaries, clarity, and intention.

This topic introduced the foundational mental models that help PHP developers build systems that are predictable, safe, and resilient. Each page explored a different boundary, but together they form a single idea:</description>
    </item>
    <item rdf:about="https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:start&amp;rev=1775319188&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-04T16:13:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Security Fundamentals</title>
        <link>https://icontemp.com/wiki/phpprimer/doku.php?id=security_fundamentals:start&amp;rev=1775319188&amp;do=diff</link>
        <description>Security Fundamentals

Core security principles for modern PHP applications. 
These pages focus on 
clarity, safe defaults, and the practical habits that 
prevent common 
vulnerabilities before they appear.

Please sort A-Z for intended reading sequence.</description>
    </item>
</rdf:RDF>
