Subversion: Get ip-address of user in pre-commit hook?

前端 未结 2 1975
旧巷少年郎
旧巷少年郎 2020-12-21 11:53

We\'re hosting a subversion repository for distrubuted software development. So non-employees have access to some of our sorce code. Our company\'s IT security policy requir

相关标签:
2条回答
  • 2020-12-21 12:25

    I'm using lsof (bash-script pre-commit):

    srcip=$(/usr/sbin/lsof -Pn -p $PPID | grep ESTABLISHED)

    or, to get only the IP:

    srcip=$(/usr/sbin/lsof -Pn|grep ssh|grep ESTA|cut -d\> -f 2|cut -d: -f 1)

    While client connects to server, pre-commit is executed. lsof shows all open files (including TCP connections etc); I select all "files" for this process (-p $PPID) and grep for ESTABLISHED (this is the connection between client and server).

    0 讨论(0)
  • 2020-12-21 12:26

    Let me imagine that you write your hook in Perl, in that case, you can use the following lib : DocumentationClientIP

    you can install the lib from Git thru this link : GITClientIP (or use the code included).

    After installation, you need to add something like that in your code :

        use SVN::Utils::ClientIP qw(ssh_client_ip);
    
        print "The client's IP address is ", ssh_client_ip();
    
    0 讨论(0)
提交回复
热议问题