このエントリーをはてなブックマークに追加


PHPで認証ユーザ名を取得する方法

ベーシック認証やダイジェスト認証を行った後、認証を行ったユーザのユーザ名(ユーザID)を取得する方法を記します。
尚、WWWサーバはApacheでOSはLinux(CentOS6)を使用しています。
また、ベーシック認証、ダイジェスト認証ともに設定済みであるとことを前提に記述しています。


スポンサーリンク

関連資料

認証したユーザIDの取得

スーパーグローバル変数 $_SERVERのREMOTE_USERに認証したユーザIDが格納されています。 サンプルスクリプトは以下の通りです。

<?php
echo $_SERVER['REMOTE_USER'];
?>

$_SERVERを一部確認

スーパーグローバル変数 $_SERVERを以下のスクリプトで表示した結果です。

<pre>
<?php
 print_r($_SERVER);
?>
</pre>

Basic認証の$_SERVER値

Array
(
    [HTTP_HOST] => 192.168.56.6
    [HTTP_USER_AGENT] => Mozilla/5.0 (X11; Linux x86_64; rv:10.0.7) Gecko/20120829 Firefox/10.0.7
<snip>
    [REMOTE_USER] => sakura
    [AUTH_TYPE] => Basic
<snip>

Digest認証の$_SERVER値

Array
(
    [HTTP_HOST] => 192.168.56.6
    [HTTP_USER_AGENT] => Mozilla/5.0 (X11; Linux x86_64; rv:10.0.7) Gecko/20120829 Firefox/10.0.7
<snip>
    [REMOTE_USER] => sakura
    [AUTH_TYPE] => Digest
<snip>

スポンサーリンク

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:36:07