Author: chabotc
Date: Mon Mar 16 11:43:53 2009
New Revision: 754879
URL: http://svn.apache.org/viewvc?rev=754879&view=rev
Log:
SHINDIG-978 by Jakub Vrána: BasicSecurityToken accepts only 6 parameters
instead of 7
Modified:
incubator/shindig/trunk/php/src/common/SecurityToken.php
incubator/shindig/trunk/php/src/common/sample/BasicSecurityToken.php
incubator/shindig/trunk/php/src/common/sample/BasicSecurityTokenDecoder.php
incubator/shindig/trunk/php/src/gadgets/GadgetContext.php
incubator/shindig/trunk/php/src/gadgets/SigningFetcher.php
incubator/shindig/trunk/php/src/social/servlet/ApiServlet.php
incubator/shindig/trunk/php/test/common/BasicSecurityTokenTest.php
incubator/shindig/trunk/php/test/social/JsonDbOpensocialServiceTest.php
incubator/shindig/trunk/php/test/social/OutputAtomConverterTest.php
incubator/shindig/trunk/php/test/social/OutputJsonConverterTest.php
incubator/shindig/trunk/php/test/social/OutputXmlConverterTest.php
Modified: incubator/shindig/trunk/php/src/common/SecurityToken.php
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/php/src/common/SecurityToken.php?rev=754879&r1=754878&r2=754879&view=diff
==============================================================================
--- incubator/shindig/trunk/php/src/common/SecurityToken.php (original)
+++ incubator/shindig/trunk/php/src/common/SecurityToken.php Mon Mar 16
11:43:53 2009
@@ -27,11 +27,11 @@
static public function createFromToken($token, $maxage) {}
- static public function createFromValues($owner, $viewer, $app, $domain,
$appUrl, $moduleId) {}
+ static public function createFromValues($owner, $viewer, $app, $domain,
$appUrl, $moduleId, $containerId) {}
/**
* is this an anonymous token? Always check this before using the
owner/viewer/etc
- *
+ *
* @return boolean if it's anonymous
*/
abstract public function isAnonymous();
Modified: incubator/shindig/trunk/php/src/common/sample/BasicSecurityToken.php
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/php/src/common/sample/BasicSecurityToken.php?rev=754879&r1=754878&r2=754879&view=diff
==============================================================================
--- incubator/shindig/trunk/php/src/common/sample/BasicSecurityToken.php
(original)
+++ incubator/shindig/trunk/php/src/common/sample/BasicSecurityToken.php Mon
Mar 16 11:43:53 2009
@@ -38,6 +38,7 @@
private $DOMAIN_KEY = "d";
private $APPURL_KEY = "u";
private $MODULE_KEY = "m";
+ private $CONTAINER_KEY = "c";
/**
* {...@inheritdoc}
@@ -53,7 +54,7 @@
* @throws BlobCrypterException
*/
static public function createFromToken($token, $maxAge) {
- return new BasicSecurityToken($token, $maxAge, null, null, null, null,
null, null);
+ return new BasicSecurityToken($token, $maxAge, null, null, null, null,
null, null, null);
}
/**
@@ -66,11 +67,11 @@
* @param moduleId module id of this gadget
* @throws BlobCrypterException
*/
- static public function createFromValues($owner, $viewer, $app, $domain,
$appUrl, $moduleId) {
- return new BasicSecurityToken(null, null, $owner, $viewer, $app, $domain,
$appUrl, $moduleId);
+ static public function createFromValues($owner, $viewer, $app, $domain,
$appUrl, $moduleId, $containerId) {
+ return new BasicSecurityToken(null, null, $owner, $viewer, $app, $domain,
$appUrl, $moduleId, $containerId);
}
- public function __construct($token, $maxAge, $owner, $viewer, $app, $domain,
$appUrl, $moduleId) {
+ public function __construct($token, $maxAge, $owner, $viewer, $app, $domain,
$appUrl, $moduleId, $containerId) {
$this->crypter = $this->getCrypter();
if (! empty($token)) {
$this->token = $token;
@@ -83,6 +84,7 @@
$this->tokenData[$this->DOMAIN_KEY] = $domain;
$this->tokenData[$this->APPURL_KEY] = $appUrl;
$this->tokenData[$this->MODULE_KEY] = $moduleId;
+ $this->tokenData[$this->CONTAINER_KEY] = $containerId;
$this->token = $this->crypter->wrap($this->tokenData);
}
}
@@ -157,4 +159,14 @@
}
return $this->tokenData[$this->MODULE_KEY];
}
+
+ /**
+ * {...@inheritdoc}
+ */
+ public function getContainer() {
+ if ($this->isAnonymous()) {
+ throw new Exception("Can't get container from an anonymous token");
+ }
+ return $this->tokenData[$this->CONTAINER_KEY];
+ }
}
Modified:
incubator/shindig/trunk/php/src/common/sample/BasicSecurityTokenDecoder.php
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/php/src/common/sample/BasicSecurityTokenDecoder.php?rev=754879&r1=754878&r2=754879&view=diff
==============================================================================
--- incubator/shindig/trunk/php/src/common/sample/BasicSecurityTokenDecoder.php
(original)
+++ incubator/shindig/trunk/php/src/common/sample/BasicSecurityTokenDecoder.php
Mon Mar 16 11:43:53 2009
@@ -23,9 +23,10 @@
private $OWNER_INDEX = 0;
private $VIEWER_INDEX = 1;
private $APP_ID_INDEX = 2;
- private $CONTAINER_INDEX = 3;
+ private $DOMAIN_INDEX = 3;
private $APP_URL_INDEX = 4;
private $MODULE_ID_INDEX = 5;
+ private $CONTAINER_INDEX = 6;
/**
* {...@inheritdoc}
@@ -41,7 +42,7 @@
// in the example files
if (Config::get('allow_plaintext_token') && count(explode(':',
$stringToken)) == 7) {
$tokens = explode(":", $stringToken);
- return new BasicSecurityToken(null, null,
urldecode($tokens[$this->OWNER_INDEX]),
urldecode($tokens[$this->VIEWER_INDEX]),
urldecode($tokens[$this->APP_ID_INDEX]),
urldecode($tokens[$this->CONTAINER_INDEX]),
urldecode($tokens[$this->APP_URL_INDEX]),
urldecode($tokens[$this->MODULE_ID_INDEX]));
+ return new BasicSecurityToken(null, null,
urldecode($tokens[$this->OWNER_INDEX]),
urldecode($tokens[$this->VIEWER_INDEX]),
urldecode($tokens[$this->APP_ID_INDEX]),
urldecode($tokens[$this->DOMAIN_INDEX]),
urldecode($tokens[$this->APP_URL_INDEX]),
urldecode($tokens[$this->MODULE_ID_INDEX]),
urldecode($tokens[$this->CONTAINER_INDEX]));
} else {
return BasicSecurityToken::createFromToken($stringToken,
Config::get('token_max_age'));
}
Modified: incubator/shindig/trunk/php/src/gadgets/GadgetContext.php
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/php/src/gadgets/GadgetContext.php?rev=754879&r1=754878&r2=754879&view=diff
==============================================================================
--- incubator/shindig/trunk/php/src/gadgets/GadgetContext.php (original)
+++ incubator/shindig/trunk/php/src/gadgets/GadgetContext.php Mon Mar 16
11:43:53 2009
@@ -273,7 +273,7 @@
if (! isset($token) || $token == '') {
$token = isset($_POST['st']) ? $_POST['st'] : '';
}
- if (count(explode(':', $token)) != 6) {
+ if (count(explode(':', $token)) != 7) {
$token = urldecode(base64_decode($token));
}
if (empty($token)) {
Modified: incubator/shindig/trunk/php/src/gadgets/SigningFetcher.php
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/php/src/gadgets/SigningFetcher.php?rev=754879&r1=754878&r2=754879&view=diff
==============================================================================
--- incubator/shindig/trunk/php/src/gadgets/SigningFetcher.php (original)
+++ incubator/shindig/trunk/php/src/gadgets/SigningFetcher.php Mon Mar 16
11:43:53 2009
@@ -51,7 +51,7 @@
* The name of the key, included in the fetch to help with key rotation.
*/
protected $keyName;
-
+
/**
* @var RemoteContentFetcher
*/
Modified: incubator/shindig/trunk/php/src/social/servlet/ApiServlet.php
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/php/src/social/servlet/ApiServlet.php?rev=754879&r1=754878&r2=754879&view=diff
==============================================================================
--- incubator/shindig/trunk/php/src/social/servlet/ApiServlet.php (original)
+++ incubator/shindig/trunk/php/src/social/servlet/ApiServlet.php Mon Mar 16
11:43:53 2009
@@ -109,7 +109,7 @@
return null;
}
}
- if (count(explode(':', $token)) != 6) {
+ if (count(explode(':', $token)) != 7) {
$token = urldecode(base64_decode($token));
}
$gadgetSigner = Config::get('security_token_signer');
Modified: incubator/shindig/trunk/php/test/common/BasicSecurityTokenTest.php
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/php/test/common/BasicSecurityTokenTest.php?rev=754879&r1=754878&r2=754879&view=diff
==============================================================================
--- incubator/shindig/trunk/php/test/common/BasicSecurityTokenTest.php
(original)
+++ incubator/shindig/trunk/php/test/common/BasicSecurityTokenTest.php Mon Mar
16 11:43:53 2009
@@ -42,8 +42,8 @@
*/
protected function setUp() {
parent::setUp();
- $this->BasicSecurityToken = BasicSecurityToken::createFromValues('owner',
'viewer', 'app', 'domain', 'appUrl', '1');
- $this->anonymousToken = BasicSecurityToken::createFromValues(0, 0, 'app',
'domain', 'appUrl', '1');
+ $this->BasicSecurityToken = BasicSecurityToken::createFromValues('owner',
'viewer', 'app', 'domain', 'appUrl', '1', 'default');
+ $this->anonymousToken = BasicSecurityToken::createFromValues(0, 0, 'app',
'domain', 'appUrl', '1', 'default');
}
/**
@@ -59,7 +59,7 @@
* Tests BasicSecurityToken::createFromValues(), toSerialForm() and
createFromToken()
*/
public function testCreateFromValues() {
- $token = BasicSecurityToken::createFromValues('owner', 'viewer', 'app',
'domain', 'appUrl', '1');
+ $token = BasicSecurityToken::createFromValues('owner', 'viewer', 'app',
'domain', 'appUrl', '1', 'default');
$this->assertEquals('owner', $token->getOwnerId());
$this->assertEquals('viewer', $token->getViewerId());
$this->assertEquals('app', $token->getAppId());
Modified:
incubator/shindig/trunk/php/test/social/JsonDbOpensocialServiceTest.php
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/php/test/social/JsonDbOpensocialServiceTest.php?rev=754879&r1=754878&r2=754879&view=diff
==============================================================================
--- incubator/shindig/trunk/php/test/social/JsonDbOpensocialServiceTest.php
(original)
+++ incubator/shindig/trunk/php/test/social/JsonDbOpensocialServiceTest.php Mon
Mar 16 11:43:53 2009
@@ -53,7 +53,7 @@
* Tests JsonDbOpensocialService->getActivities() with paging.
*/
public function testGetActivities() {
- $token = BasicSecurityToken::createFromValues('jane.doe', 'jane.doe',
1, 1, 1, 1);
+ $token = BasicSecurityToken::createFromValues('jane.doe', 'jane.doe',
1, 1, 1, 1, 'default');
$userId = new UserId('owner', null);
$userIds = array($userId);
$groupId = new GroupId('self', null);
Modified: incubator/shindig/trunk/php/test/social/OutputAtomConverterTest.php
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/php/test/social/OutputAtomConverterTest.php?rev=754879&r1=754878&r2=754879&view=diff
==============================================================================
--- incubator/shindig/trunk/php/test/social/OutputAtomConverterTest.php
(original)
+++ incubator/shindig/trunk/php/test/social/OutputAtomConverterTest.php Mon Mar
16 11:43:53 2009
@@ -51,7 +51,8 @@
$inputConverter = new InputAtomConverter();
$outputConverter = new OutputAtomConverter();
$servletRequest = array('url' => '/people/1/@self');
- $requestItem = RestRequestItem::createWithRequest($servletRequest, null,
$inputConverter, $outputConverter);
+ $token = BasicSecurityToken::createFromValues('owner', 'viewer', 'app',
'domain', 'appUrl', '1', 'default');
+ $requestItem = RestRequestItem::createWithRequest($servletRequest, $token,
$inputConverter, $outputConverter);
$requestItem->applyUrlTemplate("/people/{userId}/{groupId}/{personId}");
$entry = array('isOwner' => false, 'isViewer' => false,
'displayName' => '1 1', 'id' => '1');
Modified: incubator/shindig/trunk/php/test/social/OutputJsonConverterTest.php
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/php/test/social/OutputJsonConverterTest.php?rev=754879&r1=754878&r2=754879&view=diff
==============================================================================
--- incubator/shindig/trunk/php/test/social/OutputJsonConverterTest.php
(original)
+++ incubator/shindig/trunk/php/test/social/OutputJsonConverterTest.php Mon Mar
16 11:43:53 2009
@@ -51,7 +51,8 @@
$inputConverter = new InputJsonConverter();
$outputConverter = new OutputJsonConverter();
$servletRequest = array('url' => '/people/1/@self');
- $requestItem = RestRequestItem::createWithRequest($servletRequest, null,
$inputConverter, $outputConverter);
+ $token = BasicSecurityToken::createFromValues('owner', 'viewer', 'app',
'domain', 'appUrl', '1', 'default');
+ $requestItem = RestRequestItem::createWithRequest($servletRequest, $token,
$inputConverter, $outputConverter);
$requestItem->applyUrlTemplate("/people/{userId}/{groupId}/{personId}");
$response = array(
'entry' => array('isOwner' => false, 'isViewer' => false,
'displayName' => '1 1',
Modified: incubator/shindig/trunk/php/test/social/OutputXmlConverterTest.php
URL:
http://svn.apache.org/viewvc/incubator/shindig/trunk/php/test/social/OutputXmlConverterTest.php?rev=754879&r1=754878&r2=754879&view=diff
==============================================================================
--- incubator/shindig/trunk/php/test/social/OutputXmlConverterTest.php
(original)
+++ incubator/shindig/trunk/php/test/social/OutputXmlConverterTest.php Mon Mar
16 11:43:53 2009
@@ -51,7 +51,8 @@
$inputConverter = new InputXmlConverter();
$outputConverter = new OutputXmlConverter();
$servletRequest = array('url' => '/people/1/@self');
- $requestItem = RestRequestItem::createWithRequest($servletRequest, null,
$inputConverter, $outputConverter);
+ $token = BasicSecurityToken::createFromValues('owner', 'viewer', 'app',
'domain', 'appUrl', '1', 'default');
+ $requestItem = RestRequestItem::createWithRequest($servletRequest, $token,
$inputConverter, $outputConverter);
$requestItem->applyUrlTemplate("/people/{userId}/{groupId}/{personId}");
$entry = array('isOwner' => false, 'isViewer' => false,
'displayName' => '1 1', 'id' => '1');