Projet

Général

Profil

0001-CAS-limit-size-of-accepted-service-URL-and-allow-for.patch

Benjamin Dauvergne, 04 décembre 2015 16:19

Télécharger (2,69 ko)

Voir les différences:

Subject: [PATCH] CAS: limit size of accepted service URL and allow for any
 size in Ticket model

 .../migrations/0014_auto_20151204_1606.py            | 20 ++++++++++++++++++++
 src/authentic2_idp_cas/models.py                     |  4 +---
 src/authentic2_idp_cas/views.py                      |  2 ++
 3 files changed, 23 insertions(+), 3 deletions(-)
 create mode 100644 src/authentic2_idp_cas/migrations/0014_auto_20151204_1606.py
src/authentic2_idp_cas/migrations/0014_auto_20151204_1606.py
1
# -*- coding: utf-8 -*-
2
from __future__ import unicode_literals
3

  
4
from django.db import models, migrations
5

  
6

  
7
class Migration(migrations.Migration):
8

  
9
    dependencies = [
10
        ('authentic2_idp_cas', '0013_delete_model_service_proxy2'),
11
    ]
12

  
13
    operations = [
14
        migrations.AlterField(
15
            model_name='ticket',
16
            name='service_url',
17
            field=models.TextField(default=b'', verbose_name='service URL', blank=True),
18
            preserve_default=True,
19
        ),
20
    ]
src/authentic2_idp_cas/models.py
92 92
    validity    = models.BooleanField(default=False,
93 93
            verbose_name=_('valid'))
94 94
    service     = models.ForeignKey(Service, verbose_name=_('service'))
95
    service_url = models.CharField(max_length=256,
96
            verbose_name=_('service URL'),
97
             blank=True, default='')
95
    service_url = models.TextField(verbose_name=_('service URL'), blank=True, default='')
98 96
    user        = models.ForeignKey(compat.user_model_label, max_length=128,
99 97
            blank=True, null=True, verbose_name=_('user'))
100 98
    creation    = models.DateTimeField(auto_now_add=True,
src/authentic2_idp_cas/views.py
105 105

  
106 106
        st = Ticket()
107 107
        st.service = model
108
        # Limit size of return URL to an acceptable length
109
        service = service[:4096]
108 110
        st.service_url = service
109 111
        st.renew = renew
110 112
        self.logger.debug('login request from %r renew: %s gateway: %s',
111
-