使用者svn密碼自定義

2021-08-20 17:16:26 字數 3756 閱讀 9400

由於在linux系統apache+svn伺服器,使用者需要自定義密碼怎麼辦呢?

1.建立指令碼目錄

mkdir -p /var/www/svn/svntools

2.建立apache配置檔案

3.輸入以下內容:

alias /svntools "/var/www/svn/svntools"  

require valid-user  

authtype basic  

authname "svn tools"  

authuserfile "/var/www/svn/passwd"  

4.建立修改密碼的php指令碼,當然不一定是php指令碼,js指令碼也可輕易做到等等

<?php 

$username = $_server["php_auth_user"]; //獲取當前使用者名稱

$authed_pass = $_server["php_auth_pw"]; //獲取當前使用者密碼

$input_oldpass = (isset($_request["oldpass"]) ? $_request["oldpass"] : ""); //輸入的原密碼

$newpass = (isset($_request["newpass"]) ? $_request["newpass"] : ""); //輸入的新密碼

$repeatpass = (isset($_request["repeatpass"]) ? $_request["repeatpass"] : ""); //輸入的重複密碼

$action = (isset($_request["action"]) ? $_request["action"] : ""); //以hide方式提交到伺服器的action

if($action!="modify")

else if($authed_pass!=$input_oldpass)

else if(empty($newpass))

else if($newpass!=$repeatpass)

else

?>

<?php

//action=view 顯示普通的輸入資訊

if ($action == "view")

else if($action == "oldpasswrong")

else if($action == "passempty")

else if($action == "passnotsame")

else

else

}if (isset($msg))

?>

可能出現問題

(1).php檔案放置位置 ? /var/www/svn/svntools/svnpass.php

(2).訪問路徑?http://ip:port/svntools/svnpass.php

(3).apache埠衝突?修改/etc/httpd/conf/httpd.conf中的埠號

(4).php檔案亂碼問題?檢視php檔案格式是否為utf8

(5).修改passwd許可權問題? chown root:root passwd chmod 777 * -r  chmod -r passwd 777 chmod 777 passwd -r

(6). 如檢視apache日誌中有如下錯誤[wed jun 13 09:34:34.462360 2018] [core:notice] [pid 22132] ah00094: command line: '/usr/sbin/httpd -d foreground'

sudo: unable to open audit system: permission denied

sudo: pam_open_session: system error

sudo: policy plugin failed session initialization

sudo: unable to open audit system: permission denied?

解決方法1:setenforce 0 :用於關閉selinux防火牆,但重啟後失效。

[root@localhost ~]# setenforce 0

[root@localhost ~]# /usr/sbin/sestatus 1、關閉firewall防火牆,保證apache能夠訪問正常。2、沒有關閉selinux,時出現了如上錯誤。

解決方法2: 永久關閉修改selinux的配置檔案,重啟後生效。

開啟 selinux 配置檔案

[root@localhost ~]# vim /etc/selinux/config

修改 selinux 配置檔案

將selinux=enforcing改為selinux=disabled,儲存後退出

# this file controls the state of selinux on the system.

# selinux= can take one of these three values:

#     enforcing - selinux security policy is enforced.

#     permissive - selinux prints warnings instead of enforcing.

#     disabled - no selinux policy is loaded.

selinux=enforcing

# selinuxtype= can take one of three two values:

#     targeted - targeted processes are protected,

#     minimum - modification of targeted policy. only selected processes are protected.

#     mls - multi level security protection.

selinuxtype=targeted

此時獲取當前selinux防火牆的安全策略仍為enforcing,配置檔案並未生效。

[root@localhost ~]# getenforce

enforcing

重啟[root@localhost ~]# reboot

驗證[root@localhost ~]# /usr/sbin/sestatus

selinux status:                 disabled

[root@localhost ~]# getenforce

disabled

(7)如果出現使用者許可權不足?

首先 檢視你的apache使用者或者nginx php-fpm使用者

可以使用 ps -ef  | grep httpd 命令來檢視  其他同理

經查我的apache使用者為apache使用者

然後 visudo   或者 vim /etc/sudoers 找到

## allow root to run any commands anywhere

root    all=(all)       all這一行 在下邊追加

apache all=(root)  nopasswd:all

wcf自定義使用者名稱密碼驗證

一 建立證書 makecert.exe sr localmachine ss my a sha1 n cn testserver sky exchange pe 二 建立wcf服務 配置檔案 三 增加乙個自定義驗證類 validator類,它要繼承system.identitymodel.selec...

自定義使用者控制項

和做乙個web 窗體一樣,只是,如果引用其中的控制項的方法是如何?以下示例是asp.net 1.1裡的,2.0是怎麼引用,還沒有看書呢 string getddlyear,getddllc,getddladd,getddlpeopso getddlyear class ddlyear this.fi...

使用者自定義函式

create function 架構名.function name 傳入變數1 變數 型別,傳入變數2 變數 型別.returns return date type asbegin declare the return variable here declare variable1 variable...