799 lines
41 KiB
HTML
799 lines
41 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<title>Documentation</title>
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<base href="../">
|
||
<link rel="icon" href="images/favicon.ico"/>
|
||
<link rel="stylesheet" href="css/normalize.css">
|
||
<link rel="stylesheet" href="css/base.css">
|
||
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
|
||
<link rel="stylesheet" href="css/template.css">
|
||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
|
||
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
|
||
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
|
||
<script src="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/js/all.min.js" integrity="sha256-0vuk8LXoyrmCjp1f0O300qo1M75ZQyhH9X3J6d+scmk=" crossorigin="anonymous"></script>
|
||
<script src="js/search.js"></script>
|
||
<script defer src="js/searchIndex.js"></script>
|
||
</head>
|
||
<body id="top">
|
||
<header class="phpdocumentor-header phpdocumentor-section">
|
||
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
|
||
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
|
||
<label class="phpdocumentor-header__menu-icon" for="menu-button">
|
||
<i class="fas fa-bars"></i>
|
||
</label>
|
||
<section data-search-form class="phpdocumentor-search">
|
||
<label>
|
||
<span class="visually-hidden">Search for</span>
|
||
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
|
||
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
|
||
</svg>
|
||
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
|
||
</label>
|
||
</section>
|
||
|
||
<nav class="phpdocumentor-topnav">
|
||
<ul class="phpdocumentor-topnav__menu">
|
||
</ul>
|
||
</nav>
|
||
</header>
|
||
|
||
<main class="phpdocumentor">
|
||
<div class="phpdocumentor-section">
|
||
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
|
||
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
|
||
Menu
|
||
</label>
|
||
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
|
||
|
||
<section class="phpdocumentor-sidebar__category">
|
||
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
|
||
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/taproot.html"><abbr title="\Taproot">Taproot</abbr></a></h4>
|
||
<ul class="phpdocumentor-list">
|
||
<li><a href="namespaces/taproot-indieauth.html"><abbr title="\Taproot\IndieAuth">IndieAuth</abbr></a></li>
|
||
</ul>
|
||
</section>
|
||
|
||
|
||
<section class="phpdocumentor-sidebar__category">
|
||
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
|
||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
|
||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
|
||
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
|
||
</section>
|
||
|
||
<section class="phpdocumentor-sidebar__category">
|
||
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
|
||
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
|
||
</section>
|
||
</aside>
|
||
|
||
<div class="phpdocumentor-column -eight phpdocumentor-content">
|
||
<ul class="phpdocumentor-breadcrumbs">
|
||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/taproot.html">Taproot</a></li>
|
||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/taproot-indieauth.html">IndieAuth</a></li>
|
||
<li class="phpdocumentor-breadcrumb"><a href="namespaces/taproot-indieauth-middleware.html">Middleware</a></li>
|
||
</ul>
|
||
|
||
<article class="phpdocumentor-element -class">
|
||
<h2 class="phpdocumentor-content__title">
|
||
DoubleSubmitCookieCsrfMiddleware
|
||
|
||
|
||
|
||
<span class="phpdocumentor-element__implements">
|
||
implements
|
||
<abbr title="\Psr\Http\Server\MiddlewareInterface">MiddlewareInterface</abbr>, <abbr title="\Psr\Log\LoggerAwareInterface">LoggerAwareInterface</abbr> </span>
|
||
|
||
</h2>
|
||
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">37</span>
|
||
</aside>
|
||
|
||
<p class="phpdocumentor-summary">Double-Submit Cookie CSRF Middleware</p>
|
||
|
||
<section class="phpdocumentor-description"><p>A PSR-15-compatible Middleware for stateless Double-Submit-Cookie-based CSRF protection.</p>
|
||
<p>The <code class="prettyprint">$attribute</code> property and first constructor argument sets the key by which the CSRF token
|
||
is referred to in all parameter sets (request attributes, request body parameters, cookies).</p>
|
||
<p>Generates a random token of length <code class="prettyprint">$tokenLength</code> (default 128), and stores it as an attribute
|
||
on the <code class="prettyprint">ServerRequestInterface</code>. It’s also added to the response as a cookie.</p>
|
||
<p>On requests which may modify state (methods other than HEAD, GET or OPTIONS), the request body
|
||
and request cookies are checked for matching CSRF tokens. If they match, the request is passed on
|
||
to the handler. If they do not match, further processing is halted and an error response generated
|
||
from the <code class="prettyprint">$errorResponse</code> callback is returned. Refer to the constructor argument for information
|
||
about customising the error response.</p>
|
||
</section>
|
||
|
||
|
||
<h5 class="phpdocumentor-tag-list__heading" id="tags">
|
||
Tags
|
||
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h5>
|
||
<dl class="phpdocumentor-tag-list">
|
||
<dt class="phpdocumentor-tag-list__entry">
|
||
<span class="phpdocumentor-tag__name">link</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-tag-list__definition">
|
||
<a class="phpdocumentor-tag-link" href="https://cheatsheetseries.owasp.org/cheatsheets/Cross-Site_Request_Forgery_Prevention_Cheat_Sheet.html"> https://cheatsheetseries.owasp.org/cheatsheets/Cross-Site_Request_Forgery_Prevention_Cheat_Sheet.html </a>
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-tag-list__entry">
|
||
<span class="phpdocumentor-tag__name">link</span>
|
||
</dt>
|
||
<dd class="phpdocumentor-tag-list__definition">
|
||
<a class="phpdocumentor-tag-link" href="https://github.com/zakirullin/csrf-middleware/blob/master/src/CSRF.php"> https://github.com/zakirullin/csrf-middleware/blob/master/src/CSRF.php </a>
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
|
||
<h3 id="interfaces_class_traits">
|
||
Interfaces, Classes and Traits
|
||
<a href="#interfaces_class_traits" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h3>
|
||
|
||
<dl class="phpdocumentor-table-of-contents">
|
||
<dt class="phpdocumentor-table-of-contents__entry -interface"><abbr title="\Psr\Http\Server\MiddlewareInterface">MiddlewareInterface</abbr></dt>
|
||
<dd></dd>
|
||
<dt class="phpdocumentor-table-of-contents__entry -interface"><abbr title="\Psr\Log\LoggerAwareInterface">LoggerAwareInterface</abbr></dt>
|
||
<dd></dd>
|
||
|
||
|
||
</dl>
|
||
|
||
|
||
<h3 id="toc">
|
||
Table of Contents
|
||
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h3>
|
||
|
||
<dl class="phpdocumentor-table-of-contents">
|
||
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#constant_ATTRIBUTE">ATTRIBUTE</a>
|
||
<span>
|
||
= 'csrf' </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#constant_CSRF_TOKEN_LENGTH">CSRF_TOKEN_LENGTH</a>
|
||
<span>
|
||
= 128 </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#constant_DEFAULT_ERROR_RESPONSE_STRING">DEFAULT_ERROR_RESPONSE_STRING</a>
|
||
<span>
|
||
= 'Invalid or missing CSRF token!' </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#constant_READ_METHODS">READ_METHODS</a>
|
||
<span>
|
||
= ['HEAD', 'GET', 'OPTIONS'] </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#constant_TTL">TTL</a>
|
||
<span>
|
||
= 60 * 20 </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -property -public">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#property_attribute">$attribute</a>
|
||
<span>
|
||
: string </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -property -public">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#property_errorResponse">$errorResponse</a>
|
||
<span>
|
||
: mixed </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -property -public">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#property_logger">$logger</a>
|
||
<span>
|
||
: <abbr title="\Psr\Log\LoggerInterface">LoggerInterface</abbr> </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -property -public">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#property_tokenLength">$tokenLength</a>
|
||
<span>
|
||
: int </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -property -public">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#property_ttl">$ttl</a>
|
||
<span>
|
||
: int </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#method___construct">__construct()</a>
|
||
<span>
|
||
: mixed </span>
|
||
</dt>
|
||
<dd>Constructor</dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#method_process">process()</a>
|
||
<span>
|
||
: <abbr title="\Psr\Http\Message\ResponseInterface">ResponseInterface</abbr> </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -public">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#method_setLogger">setLogger()</a>
|
||
<span>
|
||
: mixed </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
<dt class="phpdocumentor-table-of-contents__entry -method -protected">
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#method_isValid">isValid()</a>
|
||
<span>
|
||
: mixed </span>
|
||
</dt>
|
||
<dd></dd>
|
||
|
||
</dl>
|
||
|
||
|
||
|
||
|
||
<section class="phpdocumentor-constants">
|
||
<h3 class="phpdocumentor-elements__header" id="constants">
|
||
Constants
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#constants" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h3>
|
||
<article class="phpdocumentor-element -constant -public ">
|
||
<h4 class="phpdocumentor-element__name" id="constant_ATTRIBUTE">
|
||
ATTRIBUTE
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#constant_ATTRIBUTE" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">40</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-signature phpdocumentor-code ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__type">mixed</span>
|
||
<span class="phpdocumentor-signature__name">ATTRIBUTE</span>
|
||
= <span class="phpdocumentor-signature__default-value">'csrf'</span>
|
||
</code>
|
||
|
||
|
||
|
||
|
||
|
||
</article>
|
||
<article class="phpdocumentor-element -constant -public ">
|
||
<h4 class="phpdocumentor-element__name" id="constant_CSRF_TOKEN_LENGTH">
|
||
CSRF_TOKEN_LENGTH
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#constant_CSRF_TOKEN_LENGTH" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">42</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-signature phpdocumentor-code ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__type">mixed</span>
|
||
<span class="phpdocumentor-signature__name">CSRF_TOKEN_LENGTH</span>
|
||
= <span class="phpdocumentor-signature__default-value">128</span>
|
||
</code>
|
||
|
||
|
||
|
||
|
||
|
||
</article>
|
||
<article class="phpdocumentor-element -constant -public ">
|
||
<h4 class="phpdocumentor-element__name" id="constant_DEFAULT_ERROR_RESPONSE_STRING">
|
||
DEFAULT_ERROR_RESPONSE_STRING
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#constant_DEFAULT_ERROR_RESPONSE_STRING" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">41</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-signature phpdocumentor-code ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__type">mixed</span>
|
||
<span class="phpdocumentor-signature__name">DEFAULT_ERROR_RESPONSE_STRING</span>
|
||
= <span class="phpdocumentor-signature__default-value">'Invalid or missing CSRF token!'</span>
|
||
</code>
|
||
|
||
|
||
|
||
|
||
|
||
</article>
|
||
<article class="phpdocumentor-element -constant -public ">
|
||
<h4 class="phpdocumentor-element__name" id="constant_READ_METHODS">
|
||
READ_METHODS
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#constant_READ_METHODS" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">38</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-signature phpdocumentor-code ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__type">mixed</span>
|
||
<span class="phpdocumentor-signature__name">READ_METHODS</span>
|
||
= <span class="phpdocumentor-signature__default-value">['HEAD', 'GET', 'OPTIONS']</span>
|
||
</code>
|
||
|
||
|
||
|
||
|
||
|
||
</article>
|
||
<article class="phpdocumentor-element -constant -public ">
|
||
<h4 class="phpdocumentor-element__name" id="constant_TTL">
|
||
TTL
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#constant_TTL" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">39</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-signature phpdocumentor-code ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__type">mixed</span>
|
||
<span class="phpdocumentor-signature__name">TTL</span>
|
||
= <span class="phpdocumentor-signature__default-value">60 * 20</span>
|
||
</code>
|
||
|
||
|
||
|
||
|
||
|
||
</article>
|
||
</section>
|
||
|
||
|
||
<section class="phpdocumentor-properties">
|
||
<h3 class="phpdocumentor-elements__header" id="properties">
|
||
Properties
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h3>
|
||
<article
|
||
class="
|
||
phpdocumentor-element
|
||
-property
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="property_attribute">
|
||
$attribute
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#property_attribute" class="headerlink"><i class="fas fa-link"></i></a>
|
||
<span class="phpdocumentor-element__modifiers">
|
||
</span>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">45</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__type">string</span>
|
||
<span class="phpdocumentor-signature__name">$attribute</span>
|
||
</code>
|
||
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="
|
||
phpdocumentor-element
|
||
-property
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="property_errorResponse">
|
||
$errorResponse
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#property_errorResponse" class="headerlink"><i class="fas fa-link"></i></a>
|
||
<span class="phpdocumentor-element__modifiers">
|
||
</span>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">50</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__type">mixed</span>
|
||
<span class="phpdocumentor-signature__name">$errorResponse</span>
|
||
</code>
|
||
|
||
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="
|
||
phpdocumentor-element
|
||
-property
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="property_logger">
|
||
$logger
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#property_logger" class="headerlink"><i class="fas fa-link"></i></a>
|
||
<span class="phpdocumentor-element__modifiers">
|
||
</span>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">56</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__type"><abbr title="\Psr\Log\LoggerInterface">LoggerInterface</abbr></span>
|
||
<span class="phpdocumentor-signature__name">$logger</span>
|
||
</code>
|
||
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="
|
||
phpdocumentor-element
|
||
-property
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="property_tokenLength">
|
||
$tokenLength
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#property_tokenLength" class="headerlink"><i class="fas fa-link"></i></a>
|
||
<span class="phpdocumentor-element__modifiers">
|
||
</span>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">53</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__type">int</span>
|
||
<span class="phpdocumentor-signature__name">$tokenLength</span>
|
||
</code>
|
||
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="
|
||
phpdocumentor-element
|
||
-property
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="property_ttl">
|
||
$ttl
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#property_ttl" class="headerlink"><i class="fas fa-link"></i></a>
|
||
<span class="phpdocumentor-element__modifiers">
|
||
</span>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">48</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__type">int</span>
|
||
<span class="phpdocumentor-signature__name">$ttl</span>
|
||
</code>
|
||
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
|
||
</article>
|
||
</section>
|
||
|
||
<section class="phpdocumentor-methods">
|
||
<h3 class="phpdocumentor-elements__header" id="methods">
|
||
Methods
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h3>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method___construct">
|
||
__construct()
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">69</span>
|
||
</aside>
|
||
|
||
<p class="phpdocumentor-summary">Constructor</p>
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span>[</span><span class="phpdocumentor-signature__argument__return-type">string|null </span><span class="phpdocumentor-signature__argument__name">$attribute</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">self::ATTRIBUTE</span><span> ]</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">int|null </span><span class="phpdocumentor-signature__argument__name">$ttl</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">self::TTL</span><span> ]</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">mixed </span><span class="phpdocumentor-signature__argument__name">$errorResponse</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">self::DEFAULT_ERROR_RESPONSE_STRING</span><span> ]</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">mixed </span><span class="phpdocumentor-signature__argument__name">$tokenLength</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">self::CSRF_TOKEN_LENGTH</span><span> ]</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">mixed </span><span class="phpdocumentor-signature__argument__name">$logger</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||
|
||
<section class="phpdocumentor-description"><p>The <code class="prettyprint">$errorResponse</code> parameter can be used to customse the error response returned when a
|
||
write request has invalid CSRF parameters. It can take the following forms:</p>
|
||
<ul>
|
||
<li>A <code class="prettyprint">string</code>, which will be returned as-is with a 400 Status Code and <code class="prettyprint">Content-type: text/plain</code> header</li>
|
||
<li>An instance of <code class="prettyprint">ResponseInterface</code>, which will be returned as-is</li>
|
||
<li>A callable with the signature <code class="prettyprint">function (ServerRequestInterface $request): ResponseInterface</code>,
|
||
the return value of which will be returned as-is.</li>
|
||
</ul>
|
||
</section>
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$attribute</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">string|null</span>
|
||
= <span class="phpdocumentor-signature__argument__default-value">self::ATTRIBUTE</span> </dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$ttl</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">int|null</span>
|
||
= <span class="phpdocumentor-signature__argument__default-value">self::TTL</span> </dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$errorResponse</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">mixed</span>
|
||
= <span class="phpdocumentor-signature__argument__default-value">self::DEFAULT_ERROR_RESPONSE_STRING</span> </dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$tokenLength</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">mixed</span>
|
||
= <span class="phpdocumentor-signature__argument__default-value">self::CSRF_TOKEN_LENGTH</span> </dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$logger</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type">mixed</span>
|
||
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">mixed</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_process">
|
||
process()
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#method_process" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">95</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">process</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Http\Message\ServerRequestInterface">ServerRequestInterface</abbr> </span><span class="phpdocumentor-signature__argument__name">$request</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Http\Server\RequestHandlerInterface">RequestHandlerInterface</abbr> </span><span class="phpdocumentor-signature__argument__name">$handler</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><abbr title="\Psr\Http\Message\ResponseInterface">ResponseInterface</abbr></span></code>
|
||
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$request</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Http\Message\ServerRequestInterface">ServerRequestInterface</abbr></span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$handler</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Http\Server\RequestHandlerInterface">RequestHandlerInterface</abbr></span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type"><abbr title="\Psr\Http\Message\ResponseInterface">ResponseInterface</abbr></span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-public
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_setLogger">
|
||
setLogger()
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#method_setLogger" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">91</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">public</span>
|
||
<span class="phpdocumentor-signature__name">setLogger</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Log\LoggerInterface">LoggerInterface</abbr> </span><span class="phpdocumentor-signature__argument__name">$logger</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$logger</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Log\LoggerInterface">LoggerInterface</abbr></span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">mixed</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
<article
|
||
class="phpdocumentor-element
|
||
-method
|
||
-protected
|
||
"
|
||
>
|
||
<h4 class="phpdocumentor-element__name" id="method_isValid">
|
||
isValid()
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#method_isValid" class="headerlink"><i class="fas fa-link"></i></a>
|
||
</h4>
|
||
<aside class="phpdocumentor-element-found-in">
|
||
<abbr class="phpdocumentor-element-found-in__file" title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php"><a href="files/src-middleware-doublesubmitcookiecsrfmiddleware.html"><abbr title="src/Middleware/DoubleSubmitCookieCsrfMiddleware.php">DoubleSubmitCookieCsrfMiddleware.php</abbr></a></abbr>
|
||
:
|
||
<span class="phpdocumentor-element-found-in__line">118</span>
|
||
</aside>
|
||
|
||
|
||
<code class="phpdocumentor-code phpdocumentor-signature ">
|
||
<span class="phpdocumentor-signature__visibility">protected</span>
|
||
<span class="phpdocumentor-signature__name">isValid</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Http\Message\ServerRequestInterface">ServerRequestInterface</abbr> </span><span class="phpdocumentor-signature__argument__name">$request</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
|
||
|
||
|
||
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
|
||
<dl class="phpdocumentor-argument-list">
|
||
<dt class="phpdocumentor-argument-list__entry">
|
||
<span class="phpdocumentor-signature__argument__name">$request</span>
|
||
: <span class="phpdocumentor-signature__argument__return-type"><abbr title="\Psr\Http\Message\ServerRequestInterface">ServerRequestInterface</abbr></span>
|
||
</dt>
|
||
<dd class="phpdocumentor-argument-list__definition">
|
||
|
||
</dd>
|
||
</dl>
|
||
|
||
|
||
|
||
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
|
||
<span class="phpdocumentor-signature__response_type">mixed</span>
|
||
—
|
||
<section class="phpdocumentor-description"></section>
|
||
|
||
|
||
</article>
|
||
</section>
|
||
|
||
</article>
|
||
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
|
||
<section class="phpdocumentor-search-results__dialog">
|
||
<header class="phpdocumentor-search-results__header">
|
||
<h2 class="phpdocumentor-search-results__title">Search results</h2>
|
||
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
|
||
</header>
|
||
<section class="phpdocumentor-search-results__body">
|
||
<ul class="phpdocumentor-search-results__entries"></ul>
|
||
</section>
|
||
</section>
|
||
</section>
|
||
</div>
|
||
</div>
|
||
<a href="classes/Taproot-IndieAuth-Middleware-DoubleSubmitCookieCsrfMiddleware.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
|
||
|
||
</main>
|
||
|
||
<script>
|
||
cssVars({});
|
||
</script>
|
||
</body>
|
||
</html>
|