ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用して Windows システムにユーザーを追加する_PHP チュートリアル

PHP を使用して Windows システムにユーザーを追加する_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 17:32:12902ブラウズ

それは2つの方法で実現できます。

1. Web にユーザーを追加します

ユーザーを追加するため、php (現​​在の主流の開発言語として) を実行します プログラムのユーザーには管理者権限 (Administrator) が必要であり、同時にphp(現在主流の開発言語)では、.iniのセーフモードがオンになっておらず、シャットダウン関数でsystem()、exec()、passthru()などの関数がオフになっていません。

(以下の手順は Windows2000/Windows 用です。その場合、php

(現在の主流の開発言語として)

を実行しているアカウントは次のとおりです: IUSR_XXXXXXXX、IWAM_XXXXXXX、(XXXX はサーバーのコンピューター名を表します)。この場合、これら 2 人のユーザーを追加する必要があります管理者グループ: Administrators。もちろん、これを実行すると、サーバーのセキュリティに脅威が生じます。 1. Apache
(Unixプラットフォームで最も人気のあるWEBサーバープラットフォーム)をWebサーバーとして使用します 私の知る限りでは、apache(Unixプラットフォームで最も人気のあるWEBサーバープラットフォーム)がインストールされた後、サービスの場合、システム権限で実行されます。はい、つまり、php

(現在の主流の開発言語として)

が実行される場合、管理者権限を超えたシステム権限が直接付与されるため、コマンドを実行することはできません。もっと長い問題です。 apache(Unix プラットフォームで最も人気のある WEB サーバー プラットフォーム) の実行ユーザーを変更する場合は、管理者以上の apache
(Unix プラットフォームで最も人気のある WEB サーバー プラットフォーム) サービスを実行しているユーザーを指定する必要があります管理者権限やシステム権限などの権限。 その後、php(現在の主流の開発言語として)コードでユーザー追加操作を実行できます: 投稿者のニーズに従って、次のコードを記述します:

(現在の主流の開発言語として) language)define("USER_GROUP", "users"); // ユーザー グループ、デフォルトは users ですが、セキュリティのため、定義は引き続きユーザー グループです

define("ACTIVE", "YES");ユーザーを作成後に直接アクティブ化するには、YES はアクティブ化を意味し、NO は非アクティブ化を意味します

//データベースからユーザー名とパスワードを抽出します

//テーブルが user_info であり、フィールドが id、user、password のみであると仮定します$sql = "SELECT user,password FROM user_info";$result = MySQL
(PHP との最良の組み合わせ)
_query($sql) または die("クエリ データベースに失敗しました");

//ループにユーザーを挿入します

while ( $array = MySQL
( PHP との最良の組み合わせ)
_fetch_array($result)) {
if (!function_exists("system")) die(Function system() が存在しないため、ユーザーの追加に失敗しました。); //ユーザーを追加
@ system("net user $array[user] $array[passwd] /active:ACTIVE /add");
//指定したグループに追加 @system("net localgroup users $array[user] / del"); @system("net localgroup USER_GROUP $array[user] /add");
}
?>

上記のコードは、すべてのデータベースのユーザーをローカル システムに追加します。ユーザーを個別に追加したい場合は、に変更することを検討してください。ユーザー登録が成功したら、ユーザーを追加します。これは自分で拡張できます。


2番目に、phpを使用します
(現在の主流の開発言語として)
ユーザーを追加するためのシェルスクリプトを作成します

さらに、実は別のアイデアがあります。 php

(現在主流の開発言語)

.exeを使用してサーバーサイドで実行でき、セキュリティ上の問題はありません。たった今テストを受けたところ、合格しました。
あなたのphp(現在の主流の開発言語として)

がc:php

(現在の主流の開発言語として)にインストールされていると仮定すると、コマンドプロンプトを使用してphp(現在の主流の開発言語として)を実行します。 ) 現在の主流の開発言語)

ユーザーを追加するためのスクリプト。

php(現在の主流の開発言語として)コード: //c: est.php(現在の主流の開発言語として)

(現在の主流の開発言語として)@ system("net user heiyeluren test /add");
?> c: est.php (現​​在の主流の開発言語として) に保存
ファイル cmd で実行: c:php
(現​​在の主流の開発言語として)言語)
php
(現在の主流の開発言語として).exe c: est.php(現在の主流の開発言語として)

ヒント:C:>c:php(現在の主流の開発言語として) php(現在の主流の開発言語として).exe c: est.php(現在の主流の開発言語として)

コマンドは正常に完了しました。

この観点から見ると、上で書いたコードをここに持ってきて実行すると、php(現在の主流の開発言語として).exe がシェル スクリプト エンジンとして機能します。次に、それをバッチ プロセスとして作成し、スケジュールされたタスクを通じて実行します。もちろん、vb/vc などの他の言語を使用して実装することも検討できます。定期的にデータベースを検索して、新しく追加されたユーザーがあるかどうかを確認し、ユーザーをシステムに追加します。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/508727.html技術記事これは 2 つの方法で実現できます。 1. Web にユーザーを追加します。ユーザーを追加するため、php (現在の主流の開発言語として) プログラムを実行するユーザーには管理者権限 (Admini...
) が必要です。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。