Grav-plugin-admin: ページを変更および削除するための権限

作成日 2016年04月21日  ·  16コメント  ·  ソース: getgrav/grav-plugin-admin

ユーザーがサイト全体ではなく特定のページのみを編集できるように、一部のページをロックダウンできれば素晴らしいと思います。 たぶん、ユーザーグループの上に何か?

たとえば、デフォルトの権限がおそらくuser/config/admin/admin.yamlにある可能性があります(または、テンプレートに応じてこの構成を設定できるブループリントでより意味があるかもしれません):

# Only admins can delete pages
permissions:
  pages:
    write: [admin, editor]
    delete: [admin]

また、各ページのYAML構成により、次のデフォルト設定が上書きされる可能性があります。

---
title: Awesome page
permissions:
  write: [admin] # Limit changes to the admin group in the admin plugin
  delete: [] # Protect this page from deletion from the admin plugin

---

ページをロックダウンするためのユースケース

  • サイト構造がいくつかの「コンテナ」ページ(ブログ、セクション1、セクション2…)にあり、レベル1ページをロックすることにより、セクション内の_すべてのコンテンツ_の不注意な削除を回避したい場合。
  • エラーページまたはその他の「技術的な」ページを保護する場合。
  • 1人の編集者または編集者のグループが新しいブログ投稿を作成でき、ルートの「ブログ」ページを変更できるが削除はできず、他のセクションの他のページを変更(削除は言うまでもなく)できないビジネスコミュニケーションWebサイト(またはホームページ)。

    権限の種類

単純な実装は2つの権限に制限できると思います。

  • 書きます
  • 消去

これらの他の一般的な権限タイプを除外する(あまり役に立たないか、管理が難しい):

  • 読む(管理者ユーザーにコンテンツを隠す必要性は低いようです)
  • ページの所有権(「自分の」ページの書き込み/削除)->非常に複雑になります
  • addchild(ユーザーグループがページ内に子ページを追加できるかどうかを制御する)->複雑さも追加します
1.10 enhancement fixed in repo

最も参考になるコメント

ここにいくつかの良いアイデアがあります。 私は実際に、権限を改善する方法についていくつかのアイデアを含むメモをすでに持っていました。 このチケットも考慮に入れます。 ありがとう!

全てのコメント16件

ここにいくつかの良いアイデアがあります。 私は実際に、権限を改善する方法についていくつかのアイデアを含むメモをすでに持っていました。 このチケットも考慮に入れます。 ありがとう!

@rhuksterねえ、私が見逃したそのトピックに関する進歩があるかどうか知りたいだけですか?

特定のプロジェクトでは、特定のページまたはフォルダーのページに対してグループベースの編集権限が必要です。 これは、Gravの使用を妨げる可能性がある唯一の要件です😞

あなたが正しい方向を指し示し、これを研究することができれば、それは本当に役に立ちます。
よろしくお願いします。

最も欲しかった機能!

バンプ

私たちの学校のウェブサイトで働きたいと思っている生徒がいます。 現在、彼らはブログに投稿する情報を私に渡しています。 生徒が誤ってまたは意図的にフロントページやその他の重要なものを編集することを心配する必要がないように、特定のページへのアクセスを許可できると便利です。

ありがとう-この機能が進歩していることを願っています!!

この機能はいつアスペクトできますか。 次のバージョンになることを願っています。 :-))

@brianjschott Editable with SimpleMDEプラグインをチェックアウトして、目的に合っているかどうかをテストできます。 最新バージョンは、Gravユーザーおよびロールシステムを使用したページベースの権限をサポートしています。 したがって、グループを作成することもできます。 編集はページとフロントエンドのみに制限されています。

技術者以外のユーザーに編集アクセスを許可する必要があります。これは間違いなく夜の睡眠に役立ちます。 :+1:

これについて何か進展はありますか? 最も欲しかった機能。

私は現在FlexPagesのサポートに取り組んでおり、すでにページを削除するための権限を持っています(ただし、現在は所有者のサポートはありません)。

ここにいくつかの良いアイデアがあります。 私は実際に、権限を改善する方法についていくつかのアイデアを含むメモをすでに持っていました。 このチケットも考慮に入れます。 ありがとう!

@rhuksterはあなたのコメントから3年以上経ちました。 私のクライアントの何人かは本当にこの機能を望んでいますが、Gravを愛する開発者として私たちはまだそれについての情報を持っていません。

@mahagrフレックスページとは何ですか? それはcssフレックスボックスまたは何か違うものについてですか? 詳細を教えてください😉

FlexPagesはGravFlexObjectsに基づいています。これは、クラスのクールな名前です( Grav\Framework\Flexあります。:)

つまり、FlexオブジェクトがFlexDirectoryプラグインに取って代わります。 コアクラスはGrav自体にありますが、CRUDには、管理者とフロントエンドの両方で機能するリストビューと編集ビューを提供するFlexObjectsプラグインが必要です。フロントエンドの編集、またはそれを機能させるためにいくつかのカスタムクラス/ルーティングを行う必要がある場合。 とにかく、このプラグインは管理タスクにのみ必要であり、Flex自体はそれなしで実行されます。

現在のGravPagesの実装におけるFlexPagesですが、これらの新しいFlexクラスに基づいています。 Flexを使用すると、古いソリューションに比べていくつかの利点があります。

  • すべてのオブジェクトからのインデックスを保持し、どのオブジェクトがいつ更新されたかを認識します
  • インデックスがあるため、オブジェクトはオンデマンドでのみロードされます
  • コレクション検索、メソッド呼び出し、さらにはレンダリングのためのキャッシュが組み込まれています
  • キャッシュはオブジェクトベースであるため、1つのアイテムを更新しても、他のアイテムのキャッシュが無効になることはありません。
  • コレクションは、古いページよりもはるかに強力です。 ほぼ何でも検索できます
  • FlexPageは自己完結型であり、 Pageよりもはるかに使いやすいです。
  • Flexを使用すると、ニーズに合わせてページを簡単にカスタマイズできます
  • それはあなたが例えばブログ投稿のために-他のページから分離された独自の管理セクションを作成することを可能にします
  • ..。

さらに多くの利点がありますが、私たちはすでにいくつかのプロジェクトでこれらを使用しており、誰もがこれにとても興奮しています。 4000ページのサイトで簡単に10倍のパフォーマンスが得られます。 通常のページとは別に保存され、admin内の別のセクションにあるページでも、カスタムタイプを作成できます。 ユーザーは、簡単なフォームなどに入力して、独自のページを作成できます。

この情報を共有していただきありがとうございます@mahagr👍あなたが言及するすべての中で(それはすべて素晴らしいですね!)、より高度なページコレクション、ページのカスタマイズ、およびさまざまなページタイプの個別の管理セクションが私にとって最も興味深いものです。 より細かいページ権限への投票を追加してください。これは、Gravを使用した教育シナリオで非常に価値があります。

この投稿に続いて。 今これがひどく必要です。

60153027-8420fb80-9815-11e9-831b-7a32f4f48f7b

この機能も本当にありがたいです。 この未解決の拡張機能の問題に関連しています。

これはすでにGrav1.7/Admin1.10に実装されています

このページは役に立ちましたか?
0 / 5 - 0 評価

関連する問題

maciejmatu picture maciejmatu  ·  3コメント

darkroastcreative picture darkroastcreative  ·  4コメント

jundiya picture jundiya  ·  4コメント

Quy picture Quy  ·  6コメント

ritchiedalto picture ritchiedalto  ·  6コメント