ルーティングのセキュリティ原則をどのように適用しますか?
それはクライアント側で行う必要があります。一部のルートを特定のユーザーに制限する安全な方法がないということですか。Meteor.Router のフィルターについては知っていますが、それらはクライアント側で定義されています。
これは、 curious2learnによるこのコメントでの質問です。
ルーティングのセキュリティ原則をどのように適用しますか?
それはクライアント側で行う必要があります。一部のルートを特定のユーザーに制限する安全な方法がないということですか。Meteor.Router のフィルターについては知っていますが、それらはクライアント側で定義されています。
これは、 curious2learnによるこのコメントでの質問です。
残念ながら、その通りです。現在、ルートを特定のユーザーに制限する安全な方法はありません。
現在のバージョンの Meteor では、クライアント コード全体が一度にすべてのユーザーに送信されます。これは、すべてのビューとテンプレートがそこにあることを意味し、傾向のあるユーザーはそれらを表示する方法を見つけるでしょう.
これはもちろん、権限のないユーザーが誤って入力しないように保護してはならないという意味ではありません。これは、ルーター フィルターを使用するか、テンプレート全体を条件付きでパックすることで簡単に行うことができます。これは、誰がテンプレートを表示するかを信頼してはならないことを意味するため、ハードコードされた機密データをテンプレートに入れるべきではありません。繰り返しになりますが、あなた自身のコードであっても、 client を決して信頼しないでください (改ざんされる可能性があります)。
制御できる唯一のものは、取得され、上記のテンプレートに表示されるデータです。
私のAccounts Admin UIパッケージをチェックしてください。Meteor アカウントときちんと統合されたRolesパッケージを管理します。デフォルトでは、ロールはクライアントに公開されません。Accounts Admin UIには、Iron Router との統合方法に関するクイックスタートとメモが含まれています 。
人気のあるhttps://atmospherejs.com/alanning/rolesに基づいて (サーバー側の権限チェックを使用して) 仕事を行っているhttps://atmospherejs.com/aumel/security-authorizationを確認してください。
この 2 つのリソースを確認してください。1. https://atmospherejs.com/alanning/roles 2. https://themeteorchef.com/snippets/using-the-roles-package/
彼らが助けてくれることを願っています