この記事について
この記事では、ログインユーザー用申請サイトでセルフ登録(ユーザー自身によるアカウント登録)を利用するための設定手順を説明します。
セルフ登録はオプション機能です。申請ユーザーは管理者による手動作成(「【カミレス セットアップガイド(8-3)】ログインユーザー用申請サイトの設定」の「3. 申請ユーザーの作成」)でも運用できるため、本設定を行わなくても申請サイトは利用できます。
以下のような場合に、セルフ登録の利用を検討してください。
- 申請ユーザーの数が多く、管理者による手動作成の負荷が大きい場合
- 事前にユーザーを特定できず、利用者自身に登録してもらいたい場合
前提条件
- 【カミレス セットアップガイド(8-3)】ログインユーザー用申請サイトの設定が完了していること
- 基本的なExperience Cloudの作成方法を理解していること
- 基本的なフローの作成方法を理解していること
目次
1. 事前準備
申請ユーザーは「取引先責任者(Contact)」として登録され、必ず「取引先(Account)」の配下に属します。その所属先となる取引先をあらかじめ作成しておきます。また、取引先の所有者にロールが割り当てられている必要があります。下記を参照して、設定を行ってください。
①
【カミレス セットアップガイド(8-3)】ログインユーザー用申請サイトの設定>「3. 申請ユーザーの作成」>「3-1. 事前準備(初回のみ)」>「・ロールの作成と割り当て」
②
【カミレス セットアップガイド(8-3)】ログインユーザー用申請サイトの設定>「3. 申請ユーザーの作成」>「3-1. 事前準備(初回のみ)」>「・取引先の作成」
💡
補足:個人取引先(Person Account)が有効な組織の場合
個人取引先が有効な組織では、取引先の作成は不要です(後述の「アカウント」欄は空のままにし、登録者ごとに個人取引先が自動作成されます)。
2. ログイン&登録の設定
セルフ登録を有効化し、登録されたユーザーに適用されるプロファイルと取引先を設定します。
- エクスペリエンスサイトのワークスペースで「管理」→「ログイン&登録」を開く
- 「顧客とパートナーにセルフ登録を許可」にチェックを入れる
- 「登録ページ種別」で「エクスペリエンスビルダーページ」を選択し、「登録」ページを指定する
- 「プロファイル」で作成した申請者用プロファイル(例:申請 Community Login ユーザー)を選択する
- 「アカウント」で「1. 事前準備」で作成した取引先を指定して保存する
3. ユーザー登録ページの設定
ユーザー登録フォームの表示ラベルを設定します。
- エクスペリエンスビルダーで左上のページ選択から「登録」ページを開く
- 「セルフ登録」コンポーネントを選択し、表示ラベルを変更する
4. トップページへの新規登録ボタンの追加
トップページにユーザー登録ページへ遷移するためのボタンを追加します。
- エクスペリエンスビルダーで左上のページ選択から「ホーム」ページを開く
- 「HTMLエディター」コンポーネントを選択し、「マークアップを編集」をクリックする
- 「【カミレス セットアップガイド(8-3)】ログインユーザー用申請サイトの設定」の「4-2. トップページの設定」で作成済みのログインボタンのHTMLの下(末尾)に、以下のHTMLを追加する
<!-- 新規登録ボタン -->
<a href="/[サイト名]/s/login/[登録ページのURL末尾]"
style="display:block; width:100%; box-sizing:border-box; margin-top:12px;
background-color:#FFFFFF; color:#0250C9;
padding:12px 24px; border:1px solid #0250C9; border-radius:4px;
font-size:16px; text-align:center;
text-decoration:none;">
新規登録
</a>💡
補足:各プレースホルダーの確認方法
・
・
[サイト名]:エクスペリエンスサイトのURLのドメイン後のパス名(例:https://example.my.site.com/KamilessSampleLogin/ の場合は KamilessSampleLogin)・
[登録ページのURL末尾]:エクスペリエンスビルダーで登録ページを開き、「ページプロパティ」→「URL」の末尾部分を使用(例:URLが/login/SelfRegisterの場合は、SelfRegister)5. 権限セット自動付与フローの作成
セルフ登録で作成されたユーザーに権限セット docutize Form Community01 を自動で付与するため、レコードトリガーフローを作成します。
- Salesforceの設定>クイック検索に「フロー」と入力し、「フロー」>「新規フロー」をクリックする
- 「レコードトリガーフロー」を選択し、「作成」をクリックする
- 開始要素で以下を設定する
・オブジェクト:ユーザー
・フローをトリガーする条件:レコードが作成された
・条件の要件:すべての条件に一致
項目:取引先責任者Id、演算子:null、値:False
・フローを最適化:アクションと関連レコード - 「非同期パスを追加」をオンにする
- 「非同期で実行」パスに「レコードを取得」要素を追加し、以下を設定する
・表示ラベル:権限セットを取得、API参照名:GetPermissionSet
・オブジェクト:権限セット
・条件の要件:すべての条件に一致
項目:権限セット名、演算子:次の文字列と一致する、値:docutize Form Community01
・保存するレコード数:最初のレコードのみ - 「非同期で実行」パスに「レコードを作成」要素を追加し、以下を設定する
・表示ラベル:権限セットを割り当て、API参照名:AssignPermissionSet
・レコードの項目値の設定方法:手動
・オブジェクト:権限セットの割り当て(PermissionSetAssignment)
・権限セットの割り当ての項目値を設定
項目:割り当て先ID(AssigneeId)、値:{!$Record.Id}(トリガーUser>ユーザーID)(作成されたユーザーのID)
項目:権限セットID(PermissionSetId)、値:{!GetPermissionSet.Id}(権限セットを取得 権限セット>権限セットID)(手順5で取得した権限セットのID) - 「保存」をクリックし、フローの表示ラベル(例:コミュニティユーザー権限セット付与)を入力して保存する
- 「有効化」をクリックする
💡
重要:要素は必ず「非同期で実行」パスに配置する
手順5、6の要素を即時実行パスに配置すると、MIXED_DML_OPERATION エラーが発生して権限セットを付与できません。
6. 動作確認
設定したセルフ登録の動作を確認します。
主に以下のような項目を確認します。
- 登録ページからユーザー登録できることを確認する
- 作成されたユーザーのプロファイルが申請者用プロファイルになっていることを確認する
- 作成されたユーザーに権限セット
docutize Form Community01が自動付与されていることを確認する - 登録したユーザーでログインし、申請できることを確認する
以上でセルフ登録の設定は完了です。