0001-xxx.patch
wcs/api.py | ||
---|---|---|
92 | 92 |
if users: |
93 | 93 |
user = users[0] |
94 | 94 |
else: |
95 |
raise AccessForbiddenError('unknown NameID') |
|
95 |
raise UnknownNameIdAccessForbiddenError('unknown NameID')
|
|
96 | 96 | |
97 | 97 |
return user |
98 | 98 |
wcs/forms/root.py | ||
---|---|---|
1203 | 1203 | |
1204 | 1204 |
def json(self): |
1205 | 1205 |
from wcs.api import is_url_signed, get_user_from_api_query_string |
1206 |
user = get_user_from_api_query_string() or get_request().user |
|
1206 |
try: |
|
1207 |
user = get_user_from_api_query_string() or get_request().user |
|
1208 |
except errors.UnknownNameIdAccessForbiddenError: |
|
1209 |
# if authenticating the user via the query string failed, return |
|
1210 |
# results for the anonymous case; user is set to 'False' as a |
|
1211 |
# signed URL with a None user is considered like an appropriate |
|
1212 |
# webservice call. |
|
1213 |
user = False |
|
1207 | 1214 |
list_all_forms = (user and user.is_admin) or (is_url_signed() and user is None) |
1208 | 1215 | |
1209 | 1216 |
list_forms = [] |
... | ... | |
1293 | 1300 | |
1294 | 1301 |
def categories_json(self): |
1295 | 1302 |
from wcs.api import get_user_from_api_query_string |
1296 |
user = get_user_from_api_query_string() or get_request().user |
|
1303 |
try: |
|
1304 |
user = get_user_from_api_query_string() or get_request().user |
|
1305 |
except errors.UnknownNameIdAccessForbiddenError: |
|
1306 |
# the name id was unknown, return the categories for anonymous |
|
1307 |
# users. |
|
1308 |
user = None |
|
1297 | 1309 |
list_categories = [] |
1298 | 1310 |
charset = get_publisher().site_charset |
1299 | 1311 |
categories = self.get_categories(user) |
wcs/qommon/errors.py | ||
---|---|---|
39 | 39 |
location_hint = self.location_hint) |
40 | 40 | |
41 | 41 | |
42 |
class UnknownNameIdAccessForbiddenError(AccessForbiddenError): |
|
43 |
pass |
|
44 | ||
42 | 45 |
class AccessUnauthorizedError(AccessForbiddenError): |
43 | 46 |
def render(self): |
44 | 47 |
session = quixote.get_session() |
45 |
- |