Differenciate R and W access to repo
This commit is contained in:
parent
ad9c91497c
commit
3347f08011
@ -19,6 +19,9 @@ log DEBUG, "Connection to $ENV{GL_REPO} from $ip";
|
|||||||
exit 0 if ($ENV{GL_REPO} !~ /^2[0-9]{3}\/.+\/.+/);
|
exit 0 if ($ENV{GL_REPO} !~ /^2[0-9]{3}\/.+\/.+/);
|
||||||
|
|
||||||
|
|
||||||
|
my $read = ($ARGV[0] =~ /R/);
|
||||||
|
my $write = ($ARGV[0] =~ /W/);
|
||||||
|
|
||||||
say "Votre IP est : $ip.";
|
say "Votre IP est : $ip.";
|
||||||
|
|
||||||
$ip = Net::IP->new($ip) or die ("IP invalide");
|
$ip = Net::IP->new($ip) or die ("IP invalide");
|
||||||
@ -27,7 +30,8 @@ my $schoolnetwork = Net::IP->new('10.41.0.0/16');
|
|||||||
|
|
||||||
if ($ip->overlaps($schoolnetwork) != $IP_A_IN_B_OVERLAP)
|
if ($ip->overlaps($schoolnetwork) != $IP_A_IN_B_OVERLAP)
|
||||||
{
|
{
|
||||||
log ERROR, "Vous n'êtes pas autorisé à envoyer vos modifications depuis cette IP.";
|
log ERROR, "Vous n'êtes pas autorisé à envoyer vos modifications depuis cette IP." if ($write);
|
||||||
|
log ERROR, "Vous n'êtes pas autorisé à accéder à ce dépôt depuis cette IP." if ($read);
|
||||||
exit 1;
|
exit 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -35,7 +39,8 @@ my $sshnetwork = Net::IP->new('10.41.253.0/24');
|
|||||||
|
|
||||||
if ($ip->overlaps($sshnetwork) == $IP_A_IN_B_OVERLAP)
|
if ($ip->overlaps($sshnetwork) == $IP_A_IN_B_OVERLAP)
|
||||||
{
|
{
|
||||||
log ERROR, "Vous n'êtes pas autorisé à envoyer vos modifications depuis cette IP.";
|
log ERROR, "Vous n'êtes pas autorisé à envoyer vos modifications depuis cette IP." if ($write);
|
||||||
|
log ERROR, "Vous n'êtes pas autorisé à accéder à ce dépôt depuis cette IP." if ($read);
|
||||||
exit 1;
|
exit 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user