[CalendarServer-changes] [336] CalDAVTester/trunk
source_changes at macosforge.org
source_changes at macosforge.org
Tue Oct 31 07:46:39 PST 2006
Revision: 336
http://trac.macosforge.org/projects/calendarserver/changeset/336
Author: cdaboo at apple.com
Date: 2006-10-31 07:46:38 -0800 (Tue, 31 Oct 2006)
Log Message:
-----------
Tests for proxy authentication/authorization.
Added Paths:
-----------
CalDAVTester/trunk/Resource/acls/21.xml
CalDAVTester/trunk/scripts/tests/proxyauthz.xml
Added: CalDAVTester/trunk/Resource/acls/21.xml
===================================================================
--- CalDAVTester/trunk/Resource/acls/21.xml (rev 0)
+++ CalDAVTester/trunk/Resource/acls/21.xml 2006-10-31 15:46:38 UTC (rev 336)
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<D:acl xmlns:D="DAV:">
+ <D:ace>
+ <D:principal>
+ <D:href>$principal:</D:href>
+ </D:principal>
+ <D:deny>
+ <D:privilege><D:read/></D:privilege>
+ </D:deny>
+ </D:ace>
+</D:acl>
Added: CalDAVTester/trunk/scripts/tests/proxyauthz.xml
===================================================================
--- CalDAVTester/trunk/scripts/tests/proxyauthz.xml (rev 0)
+++ CalDAVTester/trunk/scripts/tests/proxyauthz.xml 2006-10-31 15:46:38 UTC (rev 336)
@@ -0,0 +1,299 @@
+<?xml version="1.0" standalone="no"?>
+
+<!DOCTYPE caldavtest SYSTEM "caldavtest.dtd">
+
+<!--
+ Copyright (c) 2006 Apple Computer, Inc. All rights reserved.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+ DRI: Cyrus Daboo, cdaboo at apple.com
+ -->
+
+<caldavtest>
+ <description>Test proxy authorization on the server</description>
+
+ <start>
+ <request end-delete="yes">
+ <method>PUT</method>
+ <ruri>1.ics</ruri>
+ <data>
+ <content-type>text/calendar; charset=utf-8</content-type>
+ <filepath>Resource/delete/1.txt</filepath>
+ </data>
+ </request>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>MKCALENDAR</method>
+ <ruri>$pathprefix2:/visibletouser01/</ruri>
+ </request>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>ACL</method>
+ <ruri>$pathprefix2:/visibletouser01/</ruri>
+ <data>
+ <content-type>text/xml; charset=utf-8</content-type>
+ <filepath>Resource/acls/3.xml</filepath>
+ </data>
+ </request>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>PUT</method>
+ <ruri>$pathprefix2:/visibletouser01/hidden1.ics</ruri>
+ <data>
+ <content-type>text/calendar; charset=utf-8</content-type>
+ <filepath>Resource/acls/16.ics</filepath>
+ </data>
+ </request>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>ACL</method>
+ <ruri>$pathprefix2:/visibletouser01/hidden1.ics</ruri>
+ <data>
+ <content-type>text/xml; charset=utf-8</content-type>
+ <filepath>Resource/acls/20.xml</filepath>
+ </data>
+ </request>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>PUT</method>
+ <ruri>$pathprefix2:/visibletouser01/visible2.ics</ruri>
+ <data>
+ <content-type>text/calendar; charset=utf-8</content-type>
+ <filepath>Resource/acls/17.ics</filepath>
+ </data>
+ </request>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>MKCALENDAR</method>
+ <ruri>$pathprefix2:/notvisibletouser01/</ruri>
+ </request>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>ACL</method>
+ <ruri>$pathprefix2:/notvisibletouser01/</ruri>
+ <data>
+ <content-type>text/xml; charset=utf-8</content-type>
+ <filepath>Resource/acls/21.xml</filepath>
+ </data>
+ </request>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>PUT</method>
+ <ruri>$pathprefix2:/notvisibletouser01/hidden1.ics</ruri>
+ <data>
+ <content-type>text/calendar; charset=utf-8</content-type>
+ <filepath>Resource/acls/16.ics</filepath>
+ </data>
+ </request>
+ </start>
+
+ <test-suite name='Valid Proxy User' ignore='no'>
+ <test name='1' ignore='no'>
+ <description>GET user01 resource</description>
+ <request user="proxy" pswd="proxy" print-response='no'>
+ <method>GET</method>
+ <header>
+ <name>X-Authorize-As</name>
+ <value>$userid1:</value>
+ </header>
+ <ruri>1.ics</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ </request>
+ </test>
+ <test name='2' ignore='no'>
+ <description>GET user02 resource</description>
+ <request user="proxy" pswd="proxy" print-response='no'>
+ <method>GET</method>
+ <header>
+ <name>X-Authorize-As</name>
+ <value>$userid1:</value>
+ </header>
+ <ruri>$pathprefix2:/visibletouser01/visible2.ics</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ </verify>
+ </request>
+ </test>
+ <test name='3' ignore='no'>
+ <description>GET user02 resource</description>
+ <request user="proxy" pswd="proxy" print-response='no'>
+ <method>GET</method>
+ <header>
+ <name>X-Authorize-As</name>
+ <value>$userid1:</value>
+ </header>
+ <ruri>$pathprefix2:/visibletouser01/hidden1.ics</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ <arg>
+ <name>status</name>
+ <value>403</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='4' ignore='no'>
+ <description>GET user02 resource</description>
+ <request user="proxy" pswd="proxy" print-response='no'>
+ <method>GET</method>
+ <header>
+ <name>X-Authorize-As</name>
+ <value>$userid1:</value>
+ </header>
+ <ruri>$pathprefix2:/notvisibletouser01/hidden1.ics</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ <arg>
+ <name>status</name>
+ <value>403</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ </test-suite>
+
+ <test-suite name='Wrong Proxy User' ignore='no'>
+ <test name='1' ignore='no'>
+ <description>GET user01 resource</description>
+ <request user="proxy" pswd="proxy" print-response='no'>
+ <method>GET</method>
+ <header>
+ <name>X-Authorize-As</name>
+ <value>$userid3:</value>
+ </header>
+ <ruri>1.ics</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ <arg>
+ <name>status</name>
+ <value>403</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='2' ignore='no'>
+ <description>GET user02 resource</description>
+ <request user="proxy" pswd="proxy" print-response='no'>
+ <method>GET</method>
+ <header>
+ <name>X-Authorize-As</name>
+ <value>$userid3:</value>
+ </header>
+ <ruri>$pathprefix2:/visibletouser01/visible2.ics</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ <arg>
+ <name>status</name>
+ <value>403</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='3' ignore='no'>
+ <description>GET user02 resource</description>
+ <request user="proxy" pswd="proxy" print-response='no'>
+ <method>GET</method>
+ <header>
+ <name>X-Authorize-As</name>
+ <value>$userid3:</value>
+ </header>
+ <ruri>$pathprefix2:/visibletouser01/hidden1.ics</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ <arg>
+ <name>status</name>
+ <value>403</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='4' ignore='no'>
+ <description>GET user02 resource</description>
+ <request user="proxy" pswd="proxy" print-response='no'>
+ <method>GET</method>
+ <header>
+ <name>X-Authorize-As</name>
+ <value>$userid3:</value>
+ </header>
+ <ruri>$pathprefix2:/notvisibletouser01/hidden1.ics</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ <arg>
+ <name>status</name>
+ <value>403</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ </test-suite>
+
+ <test-suite name='Invalid Proxy User' ignore='no'>
+ <test name='1' ignore='no'>
+ <description>Valid proxy without header</description>
+ <request user="proxy" pswd="proxy" print-response='no'>
+ <method>GET</method>
+ <ruri>1.ics</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ <arg>
+ <name>status</name>
+ <value>401</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='2' ignore='no'>
+ <description>Valid proxy proxying as another proxy</description>
+ <request user="proxy" pswd="proxy" print-response='no'>
+ <method>GET</method>
+ <header>
+ <name>X-Authorize-As</name>
+ <value>proxy2</value>
+ </header>
+ <ruri>$pathprefix2:/visibletouser01/visible2.ics</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ <arg>
+ <name>status</name>
+ <value>401</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ <test name='3' ignore='no'>
+ <description>Regular user trying to proxy</description>
+ <request print-response='no'>
+ <method>GET</method>
+ <header>
+ <name>X-Authorize-As</name>
+ <value>$userid2:</value>
+ </header>
+ <ruri>$pathprefix2:/visibletouser01/visible2.ics</ruri>
+ <verify>
+ <callback>statusCode</callback>
+ <arg>
+ <name>status</name>
+ <value>401</value>
+ </arg>
+ </verify>
+ </request>
+ </test>
+ </test-suite>
+
+ <end>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>DELETE</method>
+ <ruri>$pathprefix2:/visibletouser01/</ruri>
+ </request>
+ <request user="$userid2:" pswd="$pswd2:">
+ <method>DELETE</method>
+ <ruri>$pathprefix2:/notvisibletouser01/</ruri>
+ </request>
+ </end>
+
+</caldavtest>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20061031/299b65cf/attachment.html
More information about the calendarserver-changes
mailing list