Kintoneにおいて、アプリに対する操作権限の管理は、アプリの管理画面から行うことができます。ただ、この管理画面で操作権限を行った場合、例えば以下のようなフローも制限されることになります。

1)社員の出退勤打刻が行えるように、ポータル画面に出退勤アプリと連動するボタンを用意した(JavaScriptでAPIを利用し実装)。
2)ポータル上のボタン経由以外での出退勤アプリのレコード作成や編集を上長以外禁止にするため、アプリの操作権限で上長以外の「レコード閲覧」権限以外を制限した。
3)ポータル上のボタン経由でのレコード作成も制限されてしまう。

このようなケースで、上長以外のレコード作成・編集を制限したい場合には、制御用のスクリプトを構築することで簡単に実現できます。

<サンプルコードの仕様>
・コード内の"上長や管理者の表示名"の箇所を、実際のユーザーの表示名に差し替えてください(複数指定可能です)。
・対象アプリの「アプリ管理」権限を上長や管理者のみに付与してください(それ以外のメンバーのアプリ管理権限を制限する)。

サンプルコードを環境に合わせてご変更いただければ、かなり便利なスクリプトになるかと思いますので、ご自由にお使いください!

※ご質問にはお答えできませんので予めご承知おきくださいませ。

コード

(function () {
  "use strict";

  const ADMIN_USERS = ["上長や管理者の表示名"];

  kintone.events.on(["app.record.create.show", "app.record.edit.show", "app.record.index.edit.show"], function (event) {
    const loginUser = kintone.getLoginUser();
    const loginUserName = loginUser.name;

    if (!ADMIN_USERS.includes(loginUserName)) {
      alert(`レコード作成・編集は許可されていません。\n修正が必要な場合は◯◯に連絡してください。`);

      window.history.back();

      return event;
    }

    return event;
  });
})();