summaryrefslogtreecommitdiff
path: root/framework/Web/Security/TFormsAuthentication.php
diff options
context:
space:
mode:
authorjrags <>2006-11-01 04:47:01 +0000
committerjrags <>2006-11-01 04:47:01 +0000
commit6d28e3f62535bb637b08287585bf9c13dfd756d2 (patch)
treeea8e6ba21ff3f5fcf7c16933d7c9a8ed224a2412 /framework/Web/Security/TFormsAuthentication.php
parentb4403995107c4440b4e19dd5e5e8385e0eac2a5a (diff)
Update of new Security code, currently working on making TLogin functional so we can test the providers soon.
Diffstat (limited to 'framework/Web/Security/TFormsAuthentication.php')
-rw-r--r--framework/Web/Security/TFormsAuthentication.php96
1 files changed, 96 insertions, 0 deletions
diff --git a/framework/Web/Security/TFormsAuthentication.php b/framework/Web/Security/TFormsAuthentication.php
new file mode 100644
index 00000000..5830d7eb
--- /dev/null
+++ b/framework/Web/Security/TFormsAuthentication.php
@@ -0,0 +1,96 @@
+<?php
+/**
+ * TFormsAuthentication class.
+ * Manages forms-authentication services for Web applications. This class cannot be inherited.
+ *
+ * @author Jason Ragsdale <jrags@jasrags.net>
+ * @version $Id: TFormsAuthentication.php 1398 2006-09-08 19:31:03Z xue $
+ * @package System.Web.Security
+ * @since 3.1
+ */
+final class TFormsAuthentication
+{
+ private static $_cookieDomain;
+ private static $_cookieMode;
+ private static $_cookiesSupported;
+ private static $_defaultUrl;
+ private static $_enableCrossAppRedirects;
+ private static $_formsCookieName;
+ private static $_formsCookiePath;
+ private static $_loginUrl;
+ private static $_requireSSL;
+ private static $_slidingExpiration;
+
+ public static function getCookiePath()
+ {
+ return self::$_cookieDomain;
+ }
+ public static function setCookiePath($value)
+ {
+ self::$_cookieDomain = TPropertyValue::ensureString($value);
+ }
+
+ public function __construct()
+ {
+
+ }
+
+ public static Authenticate($name, $password);
+ public static Decrypt($encryptedTicket);
+ public static Encrypt($ticket);
+ private static Encrypt($ticket, $hexEncodedTicket);
+ public static GetAuthCookie( $$userName, $createPersistentCookie);
+ public static GetAuthCookie( $$userName, $createPersistentCookie, strCookiePath);
+ private static GetAuthCookie( $userName, $createPersistentCookie, strCookiePath, hexEncodedTicket);
+ public static GetLoginPage( $extraQuery);
+ public static GetLoginPage( $extraQuery, $reuseReturnUrl);
+ public static GetRedirectUrl( $userName, $createPersistentCookie);
+ public static GetReturnUrl( $useDefaultIfAbsent);
+ public static HashPasswordForStoringInConfigFile($password, $passwordFormat);
+ public static Initialize();
+ private static ernalAuthenticate( $name, $password);
+ private static IsPathWithinAppRoot($context, $path);
+ private static MakeTicketoBinaryBlob($ticket);
+ public static RedirectFromLoginPage($userName, $createPersistentCookie);
+ public static RedirectFromLoginPage($userName, $createPersistentCookie, $strCookiePath);
+ public static RedirectToLoginPage();
+ public static RedirectToLoginPage($extraQuery);
+ private static RemoveQSVar($ref $strUrl, $posQ, $token, $sep, $lenAtStartToLeave);
+ public static RemoveQueryVariableFromUrl( $strUrl, $QSVar);
+ public static RenewTicketIfOld($tOld);
+ public static SetAuthCookie( $userName, $createPersistentCookie);
+ public static SetAuthCookie( $userName, $createPersistentCookie, $strCookiePath);
+ public static SignOut();
+
+ // Properties
+ public static CookieDomain { get; }
+ public static HttpCookieMode CookieMode { get; }
+ public static CookiesSupported { get; }
+ public static DefaultUrl { get; }
+ public static EnableCrossAppRedirects { get; }
+ public static FormsCookieName { get; }
+ public static FormsCookiePath { get; }
+ public static LoginUrl { get; }
+ public static RequireSSL { get; }
+ public static SlidingExpiration { get; }
+
+ // Fields
+ private static _CookieDomain;
+ private static HttpCookieMode _CookieMode;
+ private static _DefaultUrl;
+ private static _EnableCrossAppRedirects;
+ private static _FormsCookiePath;
+ private static _FormsName;
+ private static _Initialized;
+ private static object _lockObject;
+ private static _LoginUrl;
+ private static FormsProtectionEnum _Protection;
+ private static _RequireSSL;
+ private static _SlidingExpiration;
+ private static _Timeout;
+ private const CONFIG_DEFAULT_COOKIE = ".ASPXAUTH";
+ private const MAC_LENGTH = 20;
+ private const MAX_TICKET_LENGTH = 0x1000;
+ ernal const RETURN_URL = "ReturnUrl";
+}
+?> \ No newline at end of file