Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
51ed9979
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
51ed9979
编写于
5月 26, 2020
作者:
G
GitLab Bot
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add latest changes from gitlab-org/security/gitlab@12-8-stable-ee
上级
0ccebe82
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
27 addition
and
0 deletion
+27
-0
changelogs/unreleased/security-99-disable-caching-on-api-repo-blobs-raw.yml
...sed/security-99-disable-caching-on-api-repo-blobs-raw.yml
+5
-0
lib/api/repositories.rb
lib/api/repositories.rb
+4
-0
spec/requests/api/repositories_spec.rb
spec/requests/api/repositories_spec.rb
+6
-0
spec/support/shared_examples/uncached_response_shared_examples.rb
...port/shared_examples/uncached_response_shared_examples.rb
+12
-0
未找到文件。
changelogs/unreleased/security-99-disable-caching-on-api-repo-blobs-raw.yml
0 → 100644
浏览文件 @
51ed9979
---
title
:
Disable caching on repo/blobs/[sha]/raw endpoint
merge_request
:
author
:
type
:
security
lib/api/repositories.rb
浏览文件 @
51ed9979
...
...
@@ -6,6 +6,8 @@ module API
class
Repositories
<
Grape
::
API
include
PaginationParams
helpers
::
API
::
Helpers
::
HeadersHelpers
before
{
authorize!
:download_code
,
user_project
}
params
do
...
...
@@ -65,6 +67,8 @@ module API
get
':id/repository/blobs/:sha/raw'
do
assign_blob_vars!
no_cache_headers
send_git_blob
@repo
,
@blob
end
...
...
spec/requests/api/repositories_spec.rb
浏览文件 @
51ed9979
...
...
@@ -177,6 +177,12 @@ describe API::Repositories do
expect
(
headers
[
'Content-Disposition'
]).
to
eq
'inline'
end
it_behaves_like
'uncached response'
do
before
do
get
api
(
route
,
current_user
)
end
end
context
'when sha does not exist'
do
it_behaves_like
'404 response'
do
let
(
:request
)
{
get
api
(
route
.
sub
(
sample_blob
.
oid
,
'123456'
),
current_user
)
}
...
...
spec/support/shared_examples/uncached_response_shared_examples.rb
0 → 100644
浏览文件 @
51ed9979
# frozen_string_literal: true
#
# Pairs with lib/gitlab/no_cache_headers.rb
#
RSpec
.
shared_examples
'uncached response'
do
it
'defines an uncached header response'
do
expect
(
response
.
headers
[
"Cache-Control"
]).
to
include
(
"no-store"
,
"no-cache"
)
expect
(
response
.
headers
[
"Pragma"
]).
to
eq
(
"no-cache"
)
expect
(
response
.
headers
[
"Expires"
]).
to
eq
(
"Fri, 01 Jan 1990 00:00:00 GMT"
)
end
end
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录