最近のアクセス:
GAM での匿名セッション - Web アプリケーション

GeneXus Access Manager (GAM) を使用するアプリケーションは、[ Integrated Security Level ] プロパティに応じて、プライベートおよびパブリックのページを持つことができます。パブリックページでは、[ Integrated Security Level ] プロパティが None に設定されています。
プライベートとパブリックの両方の Web ページを持つアプリケーションでは、ユーザーがパブリックページにアクセスしても、セッションを維持できます (オプション)。
ユーザーがアプリケーションにログインしていなくても (アプリケーションのパブリックページにのみアクセスしていたため)、役立つ情報 (ほとんどの場合統計目的) と一緒にセッションを保存できます。以降、このセッションを「匿名セッション」と呼びます。

説明

匿名セッションは、認証されていないアプリケーションユーザーに付与される GAM セッションです。
他のセッションと同じようにトークンで識別され、 [ Date ] 、 [ InitialURL ] 、 [ LastURL ] などのプロパティを持ちます。
GAMRepositoryConfiguration Web パネル (GAM Example フォルダ内) は、このプロパティを使用したサンプルです。
これを GeneXus コードで (GAM API を使用して) 使用する方法は、次のとおりです:
&Repository.GiveAnonymousSession   = &GiveAnonymousSession // GAMBoolean データタイプ。

匿名セッション: 使用例

この例では、ユーザーが認証されるまでの間、サイトでのユーザーによるブラウズアクティビティを記録します。
ユーザーがログオンすると、同じセッションがユーザーに付与され (同じトークンが使用され)、取得していた過去の情報が保存されて、新しいセッション情報に追加されます。
これはポータルで典型的な例で、「操作可能性」はアクセスしたページの統計を取得するために必要な情報です。
詳しく説明します:
この例では、「匿名セッション」は、ユーザーがログオンするまでの間、匿名ユーザーがアクセスしたすべてのパブリック Web ページの情報が格納されます。
1.リポジトリの設定を編集し、(Backoffice GAM を使用)、 [ セッション ] タブを選択し、次のように設定します:
[ 匿名セッションを許可 ] = TRUE (チェックボックスをクリック)
[ セッションの統計を生成 ] = 最小限 (または詳細)
イメージ:52161.jpg
図 1.GAMRepositoryConfiguration フォーム
2.安全でない Web オブジェクトに次のようにプログラムします:
 &SessionValid = GAMSession.IsValid(&Session, &Errors)  //&SessionValid はブール値、&Session は GAMSession データタイプ。
 If &SessionValid
  &sessionToken = &Session.Token
  &sessionInitialURL = &Session.InitialURL
  &sessionLastURL = &Session.LastURL  //現在の Web ページを取得。
  &sessionStatus = &Session.Status
  &sessionIsAnonymous = &Session.IsAnonymous    //セッションが匿名かどうかを確認。
  &sessionDate = &Session.Date
else
 do 'DisplayMessages' 
Endif
- &session.isvalid が実行されると、GAM はセッションのトークンを返します。
ユーザーがログインしていない場合 (または、セッションの有効期限が切れた場合)、匿名セッションとして識別されます (IsAnonymous フラグが True に設定されます)。
注:
セッションの有効期限が切れた直後に GAMSession.get() が実行されると、エラー (GAM 21 Session finished, log in again.) が発生します。これは、新しい匿名セッションがまだ作成されていないためです。その次に GAMSession.get() が実行されると、匿名セッションが作成され、エラーは発生せず、新しいセッションが返されます。

参考情報

GAM リポジトリの機能とプロパティ


サブページ
Created: 14/09/18 03:09 by Admin Last update: 24/03/25 23:57 by Admin
カテゴリ
Powered by GXwiki 3.0