Merge branch 'security'

Conflicts:
	endpoints/api.py
	endpoints/web.py
This commit is contained in:
yackob03 2014-01-23 14:51:43 -05:00
commit 845985c859
10 changed files with 202 additions and 153 deletions

View file

@ -1,7 +1,8 @@
import logging
import json
from flask import make_response, request, session, Response, abort, redirect
from flask import (make_response, request, session, Response, abort,
redirect, Blueprint)
from functools import wraps
from datetime import datetime
from time import time
@ -15,6 +16,7 @@ from auth.permissions import (ReadRepositoryPermission,
ModifyRepositoryPermission)
from data import model
registry = Blueprint('registry', __name__)
store = app.config['STORAGE']
logger = logging.getLogger(__name__)
@ -73,7 +75,7 @@ def set_cache_headers(f):
return wrapper
@app.route('/v1/images/<image_id>/layer', methods=['GET'])
@registry.route('/images/<image_id>/layer', methods=['GET'])
@process_auth
@extract_namespace_repo_from_session
@require_completion
@ -94,7 +96,7 @@ def get_image_layer(namespace, repository, image_id, headers):
abort(403)
@app.route('/v1/images/<image_id>/layer', methods=['PUT'])
@registry.route('/images/<image_id>/layer', methods=['PUT'])
@process_auth
@extract_namespace_repo_from_session
def put_image_layer(namespace, repository, image_id):
@ -165,7 +167,7 @@ def put_image_layer(namespace, repository, image_id):
return make_response('true', 200)
@app.route('/v1/images/<image_id>/checksum', methods=['PUT'])
@registry.route('/images/<image_id>/checksum', methods=['PUT'])
@process_auth
@extract_namespace_repo_from_session
def put_image_checksum(namespace, repository, image_id):
@ -208,7 +210,7 @@ def put_image_checksum(namespace, repository, image_id):
return make_response('true', 200)
@app.route('/v1/images/<image_id>/json', methods=['GET'])
@registry.route('/images/<image_id>/json', methods=['GET'])
@process_auth
@extract_namespace_repo_from_session
@require_completion
@ -238,7 +240,7 @@ def get_image_json(namespace, repository, image_id, headers):
return response
@app.route('/v1/images/<image_id>/ancestry', methods=['GET'])
@registry.route('/images/<image_id>/ancestry', methods=['GET'])
@process_auth
@extract_namespace_repo_from_session
@require_completion
@ -283,7 +285,7 @@ def store_checksum(namespace, repository, image_id, checksum):
store.put_content(checksum_path, checksum)
@app.route('/v1/images/<image_id>/json', methods=['PUT'])
@registry.route('/images/<image_id>/json', methods=['PUT'])
@process_auth
@extract_namespace_repo_from_session
def put_image_json(namespace, repository, image_id):