1

セキュリティの観点から、制限された URL へのアクセスは次の 2 か所で処理するのが最善である と考えています。

  • ルーティング レベル: 許可されていないルートに誰も到達できないことを確認します。
  • テンプレート レベル: 権限を確認する前に、制限されたデータは表示されません。

Iron-Router最初の方法をサポートしていますが、使用したいですFlow-Router

Meteor の記事を見つけました: 認証とアクセス許可にフロー ルーターを使用するSatya van He-menこの記事 で、彼はルーティング グループとトリガーを使用して、アクセス許可によってルートを "フィルター処理" しています。 しかし、この記事では 、オブジェクトの関数で 、、およびを使用しています。

Meteor.loggingIn()Meteor.userId()Meteor.user()Roles.userIsInRole() triggersEnter:FlowRouter


実行中にこれらの関数のいずれかが未定義になる可能性はありtriggersEnterますか?
それらを使用しても安全ですか?
記事のパターンは気に入っているが、安全に使用できることを確認したい (または、少し変更するだけで安全になる可能性がある)

4

2 に答える 2

1

triggersEnterテンプレートレベルにあり、リアクティブである Auth Logic Permission に関する公式チュートリアルを読むことをお勧めします。

以前は、ルーター レイヤーでこれを行っていました (具体的には Iron Router を使用)。ただし、これは適切な設計ではないため、お勧めしません。

https://kadira.io/academy/meteor-routing-guide/content/implementing-auth-logic-and-permissions

于 2015-11-01T13:22:45.153 に答える