def remove_project_key(request, organization, project, key_id): try: key = ProjectKey.objects.get(id=key_id) except ProjectKey.DoesNotExist: return HttpResponseRedirect( reverse('sentry-manage-project-keys', args=[project.organization.slug, project.slug])) if not can_remove_project_key(request.user, key): return HttpResponseRedirect( reverse('sentry-manage-project-keys', args=[project.organization.slug, project.slug])) audit_data = key.get_audit_log_data() key.delete() AuditLogEntry.objects.create( organization=organization, actor=request.user, ip_address=request.META['REMOTE_ADDR'], target_object=key.id, event=AuditLogEntryEvent.PROJECTKEY_REMOVE, data=audit_data, ) messages.add_message( request, messages.SUCCESS, _('The API key (%s) was revoked.') % (key.public_key, )) return HttpResponseRedirect( reverse('sentry-manage-project-keys', args=[project.organization.slug, project.slug]))
def manage_project_keys(request, team, project): result = plugins.first('has_perm', request.user, 'edit_project', project) if result is False and not request.user.has_perm('sentry.can_change_project'): return HttpResponseRedirect(reverse('sentry')) key_list = list(ProjectKey.objects.filter( project=project, ).select_related('user', 'user_added').order_by('-id')) for key in key_list: key.project = project key.can_remove = can_remove_project_key(request.user, key), context = csrf(request) context.update({ 'team': team, 'page': 'keys', 'project': project, 'key_list': key_list, 'can_add_key': can_add_project_key(request.user, project), 'SECTION': 'team', 'SUBSECTION': 'projects' }) return render_to_response('sentry/projects/keys.html', context, request)
def remove_project_key(request, organization, project, key_id): try: key = ProjectKey.objects.get(id=key_id) except ProjectKey.DoesNotExist: return HttpResponseRedirect(reverse('sentry-manage-project-keys', args=[project.organization.slug, project.slug])) if not can_remove_project_key(request.user, key): return HttpResponseRedirect(reverse('sentry-manage-project-keys', args=[project.organization.slug, project.slug])) audit_data = key.get_audit_log_data() key.delete() AuditLogEntry.objects.create( organization=organization, actor=request.user, ip_address=request.META['REMOTE_ADDR'], target_object=key.id, event=AuditLogEntryEvent.PROJECTKEY_REMOVE, data=audit_data, ) messages.add_message( request, messages.SUCCESS, _('The API key (%s) was revoked.') % (key.public_key,)) return HttpResponseRedirect(reverse('sentry-manage-project-keys', args=[project.organization.slug, project.slug]))
def manage_project_keys(request, team, project): result = plugins.first("has_perm", request.user, "edit_project", project) if result is False and not request.user.has_perm("sentry.can_change_project"): return HttpResponseRedirect(reverse("sentry")) key_list = list(ProjectKey.objects.filter(project=project).select_related("user", "user_added").order_by("-id")) for key in key_list: key.project = project key.can_remove = (can_remove_project_key(request.user, key),) context = csrf(request) context.update( { "team": team, "page": "keys", "project": project, "key_list": key_list, "can_add_key": can_add_project_key(request.user, project), "SECTION": "team", "SUBSECTION": "projects", } ) return render_to_response("sentry/projects/keys.html", context, request)
def manage_project_keys(request, organization, project): result = plugins.first("has_perm", request.user, "edit_project", project) if result is False and not request.user.is_superuser: return HttpResponseRedirect(reverse("sentry")) key_list = list(ProjectKey.objects.filter(project=project).order_by("-id")) for key in key_list: key.project = project key.can_remove = (can_remove_project_key(request.user, key),) key.can_edit = (can_edit_project_key(request.user, key),) context = csrf(request) context.update( { "team": project.team, "organization": organization, "page": "keys", "project": project, "key_list": key_list, "can_add_key": can_add_project_key(request.user, project), } ) return render_to_response("sentry/projects/keys.html", context, request)
def manage_project_keys(request, organization, project): result = plugins.first('has_perm', request.user, 'edit_project', project) if result is False and not request.user.is_superuser: return HttpResponseRedirect(reverse('sentry')) key_list = list(ProjectKey.objects.filter( project=project, ).order_by('-id')) for key in key_list: key.project = project key.can_remove = can_remove_project_key(request.user, key), key.can_edit = can_edit_project_key(request.user, key), context = csrf(request) context.update({ 'team': project.team, 'organization': organization, 'page': 'keys', 'project': project, 'key_list': key_list, 'can_add_key': can_add_project_key(request.user, project), }) return render_to_response('sentry/projects/keys.html', context, request)
def remove_project_key(request, project, key_id): try: key = ProjectKey.objects.get(id=key_id) except ProjectKey.DoesNotExist: return HttpResponseRedirect(reverse('sentry-manage-project-keys', args=[project.slug])) if not can_remove_project_key(request.user, key): return HttpResponseRedirect(reverse('sentry-manage-project-keys', args=[project.slug])) key.delete() messages.add_message(request, messages.SUCCESS, 'The API key (%s) was revoked.' % (key.public_key,)) return HttpResponseRedirect(reverse('sentry-manage-project-keys', args=[project.slug]))
def remove_project_key(request, team, project, key_id): try: key = ProjectKey.objects.get(id=key_id) except ProjectKey.DoesNotExist: return HttpResponseRedirect(reverse('sentry-manage-project-keys', args=[project.team.slug, project.slug])) if not can_remove_project_key(request.user, key): return HttpResponseRedirect(reverse('sentry-manage-project-keys', args=[project.team.slug, project.slug])) key.delete() messages.add_message( request, messages.SUCCESS, _('The API key (%s) was revoked.') % (key.public_key,)) return HttpResponseRedirect(reverse('sentry-manage-project-keys', args=[project.team.slug, project.slug]))
def manage_project_keys(request, organization, project): key_list = list( ProjectKey.objects.filter(project=project, ).order_by('-id')) for key in key_list: key.project = project key.can_remove = can_remove_project_key(request.user, key), key.can_edit = can_edit_project_key(request.user, key), context = csrf(request) context.update({ 'team': project.team, 'organization': organization, 'page': 'keys', 'project': project, 'key_list': key_list, 'can_add_key': can_add_project_key(request.user, project), }) return render_to_response('sentry/projects/keys.html', context, request)
def manage_project_keys(request, organization, project): key_list = list(ProjectKey.objects.filter(project=project).order_by("-id")) for key in key_list: key.project = project key.can_remove = (can_remove_project_key(request.user, key),) key.can_edit = (can_edit_project_key(request.user, key),) context = csrf(request) context.update( { "team": project.team, "organization": organization, "page": "keys", "project": project, "key_list": key_list, "can_add_key": can_add_project_key(request.user, project), } ) return render_to_response("sentry/projects/keys.html", context, request)