GovAppsプラグイン 安全性を確認できる無料kintoneプラグイン集
文字列1行またはユーザー選択フィールドに入力された「ユーザーコード(ログイン名)」をもとに、 氏名・メールアドレス・電話番号・所属・グループなどのユーザー情報を取得し、別の文字列フィールドへ 自動入力するプラグインです。設定したボタンを押したとき、またはレコード保存時に反映できます。
問い合わせ管理や申請フォームなどで、担当者のユーザーコード(ログイン名)を文字列フィールドに入力するだけで、氏名やメールアドレスを別フィールドへ自動入力できます。連絡先を都度手入力する手間や入力ミスを減らせます。
ユーザー選択フィールドで担当者を選ぶと、その担当者が所属する組織やグループの一覧を文字列フィールドへカンマ区切りで自動入力できます(複数選択されている場合は1人目の情報を使用)。検索・絞り込み用の文字列フィールドとして活用できます。
元フィールドは、レコード一覧のインライン編集では常に編集できなくなります。該当するユーザーが見つからない場合(未入力を含む)、出力先フィールドはすべて空文字列でクリアされます。「ボタン押下時」の設定行では、反映ボタンの隣に「クリア」ボタンも表示され、確認ダイアログのあと元フィールド・転記済みの内容をまとめて空にできます。
kintoneセキュアコーディングガイドラインに沿って実装時にチェックしています。特に重要な点は次のとおりです。
kintone.api()(kintone自身への呼び出し専用の内部ラッパー)のみを使用しています。所属・グループは同等のJavaScript API(kintone.user.getOrganizations()/kintone.user.getGroups())が存在するため、こちらのみを使用しRESTは使いません。外部サーバーへの通信は一切行わず、外部ライブラリも使用していません。innerHTMLではなくtextContentやkintone標準のフィールド値レンダリングを経由しており、DOMへ構造として解釈されません。詳細な確認項目・確認日は下記GitHubのチェックリストに全項目を掲載しています。
このプラグインは、該当するユーザーコードが実在するかどうかの判定と、氏名・メールアドレス等の取得のために
User API(GET /v1/users.json、内部向けラッパーのkintone.api()経由)を実行します。
「ボタン押下時」を選んだ設定行はボタンを押すたびに、「保存時」を選んだ設定行はレコード保存のたびに1回
実行されます。転記項目に所属・グループのみを設定した設定行でも、存在しないユーザーコードを正しく
「見つかりませんでした」と判定するためにUser APIを呼び出します(kintone.user.getOrganizations()/
kintone.user.getGroups()自体は存在しないユーザーコードでもエラーにならず空配列を返すため、
判定には使えません)。所属・グループの実データ取得自体はJavaScript APIのため、kintoneのREST API実行数には
別途カウントされません。