ホームページ バックエンド開発 PHPチュートリアル ブラウザ Basic Auth 認証 phpMyAdmin 自動ログイン_PHP チュートリアル

ブラウザ Basic Auth 認証 phpMyAdmin 自動ログイン_PHP チュートリアル

Jul 13, 2016 pm 05:08 PM
auth basic phpmyadmin 導入 記事 方法 ブラウザ ログイン 自動 認証

この記事では、ブラウザの Basic 認証認証を使用した phpMyAdmin の自動ログインについて説明します。詳しく知りたい学生は参照してください。

1. 需要
phpMyAdminに自動的にログインします。最後に、Basic 認証認証を使用するすべての Web ページに自動的にログインするという問題を解決できます。

.
2. phpMyAdmin
の4つの認証ログイン方法 1.config 設定ファイル。ログインを許可するユーザー名とパスワードをconfig.inc.php設定ファイルに直接記述します。
2. クッキー。最も一般的な方法は、ホームページのフォームに記入してログインすることです。
3.http。 HTTP 基本認証方式。ブラウザのポップアップ ダイアログ ボックスを使用してログインします。 Cookie 方式との違いは主にユーザー エクスペリエンスにあります。
4.サインオン。システム統合に適したシングルサインオン。ユーザーはシステムにログインした後、ユーザー名とパスワードを入力しなくても、ワンクリックで phpMyAdmin にログインできます。
参考: http://wiki.phpmyadmin.net/pma/Auth_types

論理的には、サインオン方法がニーズを満たすための優先ソリューションであるはずですが、プロジェクト開発には常に妥協と調整が含まれており、既存のシステムの運用への干渉を最小限に抑える必要があります。さらに、ログインするためのサインオン方法を実装する一方で、ユーザーがユーザー名とパスワードを入力する元のログイン方法、つまりバックアップ ログイン ソリューションを保持することも必要です。このことが問題を複雑にしています。

3. 基本認証とは
既存システムはBasic認証を使用しているため、今回はワンクリックでログインする方法を検討しました。

HTTP 基本認証を必要とする URL にアクセスする場合、ユーザー名とパスワードを指定しないと、サーバーは 401 を返し、ブラウザーはユーザー名とパスワードの入力を求めるプロンプトを表示します。例は次のとおりです:

コードは次のとおりです コードをコピー
if (!isset($_SERVER['PHP_AUTH_USER'])) {
header('WWW-Authenticate: Basic realm="My Realm"');
Header('HTTP/1.1 401 Unauthorized');
} その他 {
echo "

こんにちは {$_SERVER['PHP_AUTH_USER']}。

";
echo "

パスワードとして {$_SERVER['PHP_AUTH_PW']} を入力しました。

";
}
?>

login.php として保存し、http://localhost/login.php を参照して効果を確認します。


ブラウザ基本認証: IE9 および Chrome のポップアップ認証ダイアログ
ブラウザにポップアップ表示されるウィンドウにユーザー名とパスワードを入力します。Chrome Developer Tools (または Firebug) を使用して表示すると、実際には次のような追加のリクエスト ヘッダーが送信されるだけであることがわかります。

権限: 基本 bXlfdXNlcm5hbWU6bXlfcGFzc3dvcmQ=

4.Basic認証認証の自動ログインソリューション
認証に合格するには、主に2つの方法があります

•まず、リクエストヘッダーに Authorization を追加します (JavaScript で実装可能):

認可: 「ユーザー名とパスワードの基本的なbase64暗号化文字列」
•2 番目は、URL にユーザー名とパスワードを追加します (IE ではサポートされていません):
http://ユーザー名:パスワード@ドメイン.com/login.php

js を使用してリクエスト ヘッダーを追加するには、XMLHttpRequest を使用できます。実装コードは次のとおりです。

コードは次のとおりですBasic Auth 認証自動ログイン ソリューションを要約すると—
コードをコピー
<頭>

ログイン
<スクリプト>
関数ログイン() {
var ユーザー名 = document.getElementById("ユーザー名").value;
var パスワード = document.getElementById("パスワード").value;

xhr = 新しい XMLHttpRequest();
xhr.open("POST", "http://localhost/login.php", false, ユーザー名, パスワード);
xhr.send(null);

xhr.status == 200;
を返します }




<フィールドセット>
ログイン












1. ユーザー名とパスワードは URL に直接記述されます。

短所: 安全性が十分ではなく、IE ではサポートされていません。

2. PHP がユーザー名とパスワードをフォームに入力し、ページがアップロードされると、送信用の Authorization リクエスト ヘッダーが生成されます。

欠点: このシステムと phpMyAdmin は同じドメイン内に存在する必要があります。たとえば、このシステムは admin.domain.com にあり、phpMyAdmin は phpmyadmin.domain.com にあります。この場合、js をドメイン間で送信することはできません。

3. このシステムは、phpMyAdmin が配置されているドメイン内のフォームにユーザー名とパスワードを投稿し、そのフォームを使用して js を使用してログインします。

欠点: クロスドメインを実現するには、phpMyAdmin が配置されているドメインに新しいページを追加する必要があります。

http://www.bkjia.com/PHPjc/629832.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/629832.html技術記事この記事では、ブラウザの Basic 認証を使用した phpMyAdmin の自動ログインについて説明します。詳しく知りたい学生は参照してください。 1. 要件 phpMyAdmin に自動的にログインします。やっと解決できました...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

CSSを介してサイズ変更シンボルをカスタマイズし、背景色で均一にする方法は? CSSを介してサイズ変更シンボルをカスタマイズし、背景色で均一にする方法は? Apr 05, 2025 pm 02:30 PM

CSSでサイズ変更シンボルをカスタマイズする方法は、背景色で統一されています。毎日の開発では、調整など、ユーザーインターフェイスの詳細をカスタマイズする必要がある状況に遭遇することがよくあります...

Webページにローカルにインストールされている「Jingnan Mai Round Body」を正しく表示するにはどうすればよいですか? Webページにローカルにインストールされている「Jingnan Mai Round Body」を正しく表示するにはどうすればよいですか? Apr 05, 2025 pm 10:33 PM

最近、Webページにローカルにインストールされたフォントファイルを使用して、インターネットから無料のフォントをダウンロードし、システムに正常にインストールしました。今...

フレックスレイアウトの下のテキストは省略されていますが、コンテナは開かれていますか?それを解決する方法は? フレックスレイアウトの下のテキストは省略されていますが、コンテナは開かれていますか?それを解決する方法は? Apr 05, 2025 pm 11:00 PM

フレックスレイアウトとソリューションの下でのテキストの過度の省略によるコンテナの開口部の問題が使用されます...

ネガティブマージンが場合によっては効果がないのはなぜですか?この問題を解決する方法は? ネガティブマージンが場合によっては効果がないのはなぜですか?この問題を解決する方法は? Apr 05, 2025 pm 10:18 PM

なぜマイナスマージンが場合によっては有効にならないのですか?プログラミング中、CSSの負のマージン(負...

エッジブラウザの特定のDIV要素が表示されないのはなぜですか?この問題を解決する方法は? エッジブラウザの特定のDIV要素が表示されないのはなぜですか?この問題を解決する方法は? Apr 05, 2025 pm 08:21 PM

ユーザーエージェントスタイルシートによって引き起こされるディスプレイの問題を解決する方法は? Edgeブラウザを使用する場合、プロジェクトのDIV要素を表示することはできません。チェックした後、私は投稿しました...

CSSとFlexBoxを使用して、さまざまな画面サイズで画像とテキストのレスポンシブレイアウトを実装する方法は? CSSとFlexBoxを使用して、さまざまな画面サイズで画像とテキストのレスポンシブレイアウトを実装する方法は? Apr 05, 2025 pm 06:06 PM

CSSを使用してレスポンシブレイアウトを実装して、Webデザインのさまざまな画面サイズの下でレイアウトの変更を実装する場合、CSS ...

JavaScriptまたはCSSを介してブラウザ印刷設定でページの上部と終了を制御する方法は? JavaScriptまたはCSSを介してブラウザ印刷設定でページの上部と終了を制御する方法は? Apr 05, 2025 pm 10:39 PM

JavaScriptまたはCSSを使用して、ブラウザの印刷設定のページの上部と端を制御する方法。ブラウザの印刷設定には、ディスプレイが...

カスタムスタイルのシートは、SafariのローカルWebページでバイドゥページでは効果を発揮できないのはなぜですか? カスタムスタイルのシートは、SafariのローカルWebページでバイドゥページでは効果を発揮できないのはなぜですか? Apr 05, 2025 pm 05:15 PM

Safariでカスタムスタイルシートを使用することについてのディスカッション今日は、Safariブラウザ向けのカスタムスタイルシートのアプリケーションに関する質問について説明します。フロントエンド初心者...

See all articles