Commit 97020c15 authored by Jan Provaznik's avatar Jan Provaznik

Merge branch 'update-authorization-for-dl-page' into 'master'

Add permissions to see Dependency List page

See merge request gitlab-org/gitlab-ee!15771
parents 73aec098 e07c9d4e
...@@ -2,14 +2,14 @@ ...@@ -2,14 +2,14 @@
module Projects module Projects
class DependenciesController < Projects::ApplicationController class DependenciesController < Projects::ApplicationController
before_action :check_feature_enabled! before_action :authorize_read_dependency_list!
before_action do before_action do
push_frontend_feature_flag(:dependency_list_vulnerabilities, default_enabled: true) push_frontend_feature_flag(:dependency_list_vulnerabilities, default_enabled: true)
end end
def check_feature_enabled! def authorize_read_dependency_list!
render_404 unless project.feature_available?(:dependency_list) render_404 unless can?(current_user, :read_dependencies, project)
end end
end end
end end
---
title: Update permissions on Dependency List page
merge_request: 15771
author:
type: fixed
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
require 'spec_helper' require 'spec_helper'
describe Projects::DependenciesController do describe Projects::DependenciesController do
set(:project) { create(:project, :repository, :private) } set(:project) { create(:project, :repository, :public, :repository_private) }
set(:user) { create(:user) } set(:user) { create(:user) }
subject { get :show, params: { namespace_id: project.namespace, project_id: project } } subject { get :show, params: { namespace_id: project.namespace, project_id: project } }
...@@ -11,7 +11,7 @@ describe Projects::DependenciesController do ...@@ -11,7 +11,7 @@ describe Projects::DependenciesController do
describe 'GET show' do describe 'GET show' do
context 'with authorized user' do context 'with authorized user' do
before do before do
project.add_developer(user) project.add_reporter(user)
sign_in(user) sign_in(user)
end end
...@@ -55,7 +55,9 @@ describe Projects::DependenciesController do ...@@ -55,7 +55,9 @@ describe Projects::DependenciesController do
end end
end end
context 'with anonymous user' do context 'with anonymous user and private project' do
let(:project) { create(:project, :repository, :private) }
it 'returns 302' do it 'returns 302' do
subject subject
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment