<\/P>
この投稿では、以下の方法について説明します:<\/FONT><\/P>Survey123 を使用して ArcGIS Online ユーザーアカウント作成に必要な情報を収集する方法 <\/FONT><\/LI><\/UL>ArcGIS Dashboards を使用して、これらのアカウントリクエストを任意で承認する方法<\/FONT><\/LI><\/UL>ArcGIS Hosted Notebooks と Python API を使用して、承認されたユーザーアカウントの作成を自動化する方法 <\/FONT>
<\/LI><\/UL>仕組み - <\/H2>Survey123 を活用してユーザーからアカウントのリクエストを収集できます。フォームが完了すると、そのデータはフィーチャレイヤーに保存されます。このフィーチャレイヤーを Dashboard で使用し、適切なスタッフがリクエストを承認または拒否できます。その後、指定した間隔で ArcGIS Notebook をスケジュール実行し、承認されたリクエストのアカウントを作成します。<\/FONT><\/P>
<\/span> <\/P>
潜在的なユースケース –<\/H2>緊急管理の組織と協力した経験に基づき、私と同僚は以下の場合にこのソリューションの導入を強くお勧めします:<\/FONT><\/P>管理者としてアカウントを手動で随時作成している場合、または新規ユーザーが急増する特定のシナリオで作成している場合<\/FONT><\/LI>アカウントをリクエストする潜在的なユーザーについてより多くの情報を整理して収集する必要がある場合<\/FONT><\/LI>管理者以外のユーザーに安全にアカウント作成の管理負担を分散させたい管理者の場合<\/FONT><\/LI>Hub Premium Community 管理者であり、サインインプロンプトからコミュニティアカウント作成オプションを削除して一般公開によるコミュニティアカウント作成を防止したいが、それでも効率的にコミュニティアカウントをプロビジョニングするプロセスが必要な場合。
<\/FONT><\/LI><\/UL>ステップ 1: Survey123 の構築と共有 <\/STRONG><\/H2>こちらのサンプル調査をご覧ください。Survey123 connect を使用している場合は、このテンプレート xlsを使って Survey とホストフィーチャレイヤーを作成できます。<\/P>ArcGIS Online ではアカウント作成に特定の情報が必要なため、調査ではユーザーから以下の情報を必ず取得してください:<\/SPAN> <\/SPAN><\/P>名<\/SPAN> <\/SPAN><\/LI>姓<\/SPAN> <\/SPAN><\/LI>メールアドレス<\/SPAN> <\/SPAN>
<\/SPAN><\/LI><\/UL>さらに、ユーザーについて役立つ追加情報も収集できます:<\/SPAN> <\/SPAN><\/P>電話番号<\/SPAN> <\/SPAN><\/LI>役職または組織名<\/SPAN>郵便番号<\/LI>興味・関心事項<\/LI>最後に、ArcGIS Hosted Notebook がアカウント作成時に利用するための非表示質問がいくつか必要です:< \/SPAN >< \/P >< LI >< SPAN >ユーザー名< \/SPAN >< SPAN > – < \/SPAN >< SPAN >このテキストフィールドは、送信者の入力に基づいて調査内で計算されるか、またはアカGIS Notebook がアカウント作成時に入力します< \/SPAN >< \/LI >< LI >< SPAN >メンバー作成済み – このテキストフィールドはデフォルトで「いいえ」となり、ArcGIS Hosted Notebook がまだアカウントが必要なリクエストを判別できます< \/SPAN >< \/LI >< LI >< SPAN >リクエストステータス – このフィールドはデフォルトで「新規」となり、下記の承認アプリで承認が必要なリクエストを追跡できます。< \/SPAN >< \/LI >< LI >< SPAN >備考 – このテキストフィールドは ArcGIS Hosted Notebook が潜在的なエラーについてメモを追加できるようにします。
< \/SPAN >< \/LI >< \/UL >プロ向けヒント< \/STRONG >< \/H3 >< LI >< SPAN >調査が多言語対応すべきか検討してください。追加言語は < \/SPAN >< A href = "https:\/\/doc.arcgis.com/en/survey123/desktop/create-surveys/xlsformmultiplelanguagesupport.htm" target = "_blank" rel = "noopener nofollow noreferrer" >< SPAN >Survey123 Connect< \/SPAN >< \/A >< SPAN > または < \/SPAN >< A href = "https:\/\/doc.arcgis.com/en/survey123/browser/create-surveys/xlsformmultiplelanguagesupport.htm#:~:text=Click%20Manage%20survey%20languages%20on,list%20item%2C%20and%20form%20element" target = "_blank" rel = "noopener nofollow noreferrer" >< SPAN >web designer< \/SPAN >< \/A >< SPAN > で追加可能です。< \/SPAN >< SPAN > < \/SPAN >< \/LI >< LI >< SPAN >調査をできるだけ使いやすくしてください!例えば:< \/SPAN >< SPAN > < \/SPAN >< UL >< LI >< SPAN >電話番号を収集していますか?< \/SPAN >< SPAN > 入力マスクinput mask< \/A > < \/SPAN >< \/LI >< LI >< SPAN >地点位置を収集していますか? < \/SPAN >< SPAN >住所質問address question< \/A >(web designer) またはジオコード外観geocode appearance< \/A >(Survey123 Connect) を使用してください。 < \/SPAN >< \/LI >< LI >< SPAN >位置情報に基づいて情報収集していますか? < \/SPAN >< SPAN >pulldata 関数pulldata functions< \/A > を使って郵便番号や選挙区などを計算しましょう! < \/SPAN >< \/LI >< LI >< SPAN >すべての調査で可能な限り多くのフィールドを事前入力し非表示にしてください。
< \/SPAN ><\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> <\/> \n
調査の公開と共有
[0m
[0m
[0m
[0m
[0m
[0m
[0m
[0m
[0m
[0m
[0m
[0m
[0m
[0m
target="_blank" rel="noopener nofollow noreferrer">Users name と Approved Date フィールドを now.

フォームの設定が完了したら、「properties」に移動し、「information」を展開して「Save」をクリックし、レイヤーにフォーム設定を保存します。このステップにより、webmapなしで ArcGIS Dashboard を介してフォームにアクセスできるようになります。
承認アプリの構築と共有
これで、ArcGIS Dashboard の作成が準備できました。テーブル要素を作成し、先に作成した Approval View に接続します。テーブル要素の設定でフィーチャを表示し、表示したい列を選択し、「Allow attribute updating」をオンに切り替えます
これでユーザーはアクセスリクエストを確認し、鉛筆アイコンをクリックして承認できます。必要に応じて、リクエストの合計を示すインジケーターなどの追加要素も設定可能です。


ArcGIS Dashboard と Approval View を承認が必要なユーザーと共有することを忘れないでください。このアプリは実際の管理権限を付与せずにアカウント承認の管理責任を共有できるようにします!すごいですね!
ステップ 3: ArcGIS Hosted Notebook の展開
ArcGIS Hosted Notebook を使用してアカウントを作成するには、アカウントが作成される ArcGIS Online Organization で必要な管理者権限を持つアカウントを使用する必要があります。
はじめに
このサンプルをご覧になり、組織内で展開するためにコピーをダウンロードしてください。このノートブックはArcGIS Hub Online Community Organizationでアカウント作成によく使われます。なぜなら管理者がコミュニティアカウントの公開作成を禁止しているからです。もしそうなら、このサンプルノートブックがどのように二つの組織に認証しているかをご覧ください:gis は Feature Layer へのアクセスを提供し、hub_gis はアカウント作成先です。
もし一つの ArcGIS Online Organization でアカウントを作成する場合は、下記の hub_gis の定義を削除し、hub_gis のすべてのインスタンスを gis に置き換えてください。

初期変数の設定
次に、いくつかの初期変数を設定する必要があります。user_management_layer <item id> をアカウントリクエスト情報が含まれるフィーチャレイヤーのアイテムIDに置き換えてください。また、新しいすべてのアカウントを一元化されたグループ(例えばイニシアチブ用の Followers グループ)に配置したい場合は、followers_group_id <item id> を適切なグループIDに更新してください。中央グループへの追加が不要な場合は、その行をコメントアウトしても構いません。
その後、Approval App を設定している場合は、Request Status フィールドが「Approved」で Member Created が「No」のレコードのみクエリし、スクリプトは承認済みだが処理されていないリクエストのみアカウントを作成します。
Approval App を設定していない場合は、以下のクエリを「member_created = 'no'」に変更し、手動介入なしでリクエストが処理されるようにしてください。

ユーザーアカウントの定義と作成
スクリプト更新を完了するため、「_mycommunity」をお好みのユーザー名識別子に置き換え、新_usertype と new_role を割り当てたいユーザータイプと役割に更新してください。

ノートブックの残り部分について説明すると:ここから先はユーザーが既に存在するかどうかチェックし、その後アカウント作成、オプションでグループへの追加、およびアカウントリクエストフィーチャレイヤーの更新を行います。

注意:Hub Premium Community Organization でアカウントを作成していない場合は、hub_gis のすべてのインスタンスを gis に変更してください。
保存とスケジュール設定
最後に変更内容を保存し、ノートブックタスクのスケジュール設定を行って、このプロセスが定期的に実行されるようにします。通常は夜間処理として設定しますが、ご自身の組織のニーズに合った時間帯を選んでください。
アイテム概要
ここまで来たら、以下のアイテムが作成されているはずです。
名前 | アイテムタイプ | 共有レベル |
Access Request Form | Survey123 フォーム | パブリック |
Public Submission View | ホスト型フィーチャレイヤー (ビュー) | パブリック |
Access Request Layer | ホスト型フィーチャレイヤー | 共有なし |
Approval View | ホスト型フィーチャレイヤー (ビュー) | 所有者またはグループと共有済み |
Approval App | ArcGIS Dashboard | 所有者またはグループと共有 |
アカウント作成者 | ArcGIS Hosted Notebook | 共有されていません |
まとめの考察
上記のソリューションが、ユーザーがより効率的にアカウントを受け取れるようにし、より価値の高いGISタスクに集中するための時間を確保できることを願っています!
このワークフローの実装に関して質問や課題がある場合は、下にコメントを投稿してください。皆様が行った変更についてもぜひお聞かせください!
関連する追加リソースを公開次第、ここにリンクを追加します。