2016-09-06 22 views
2

mod_auth_openidccentos7で動作していますが、渡されたユーザー情報を抽出する方法を示すマニュアルは見つかりません。mod_auth_openidc PHPで使用するためのユーザー変数へのアクセス方法

私のログは、私が

OIDCRemoteUserClaim email 
OIDCOAuthRemoteUserClaim email 

その後、<?php echo $_SESSION['REMOTE_USER']; ?>を使用してhttpd.confで次の両方を設定しようとした

oidc_authz_match_claim: evaluating key "nickname" 
oidc_authz_match_claim: evaluating key "email" 
oidc_authz_match_claim: evaluating key "user_id" 
oidc_authz_match_claim: evaluating key "identities" 
oidc_authz_match_claim: evaluating key "iat" 
oidc_authz_match_claim: evaluating key "picture" 
oidc_authz_match_claim: evaluating key "last_password_reset" 
oidc_authz_match_claim: evaluating key "name" 
oidc_authz_match_claim: evaluating key "created_at" 
oidc_authz_match_claim: evaluating key "app_metadata" 
oidc_authz_match_claim: evaluating key "email_verified" 
oidc_authz_match_claim: evaluating key "clientID" 
oidc_authz_match_claim: evaluating key "folders" 

モジュールは、以下の取調べを行っているが、私はいずれかを取得しておりませんことを示しています変数が返されます。

echo $_SERVER['OIDC_CLAIM_email'] 

とHTTPヘッダとして:

$hdrs = apache_request_headers(); 
echo $hdrs['OIDC_CLAIM_email']; 

REMOTE_USER変数であるemailクレームは、環境変数の両方として利用可能であるデフォルト設定で

おかげ アート

答えて

1

以下からアクセス可能:

$_SERVER['REMOTE_USER']; 

は、デフォルトでグローバルに一意の識別子に設定されますが、示したとおりにOIDCRemoteUserClaimディレクティブで設定できます。セットアップに関するいくつかの発言:

  1. あなたはそれらの変数名がHTTP_で始まると、例えば大文字とHTTPヘッダーは、環境変数でも利用可能であることに注意しましょう
    $_SERVER['HTTP_OIDC_CLAIM_EMAIL'];

  2. あなたは関連する請求がid_tokenに存在したか、返された場合

  3. 変数はもちろんのみ存在する様々な設定ディレクティブを通じてヘッダおよび/または環境変数での主張を渡す周りの動作を設定することができますユーザー情報のエンドポイントから

+0

あなたの答えは、代わりに '' SERVER'のSESSION'を使用して、私の基本的なエラーに私を指摘したが、 '上のヒントはOIDC_CLAIM_ *'簡体字ために私たちのアーキテクチャへのアプローチを変更しますプロセスを活性化する。詳細な答えをありがとう –

関連する問題