2016-03-27 9 views
1

私はセキュリティが大きな関心事であるAngularJSアプリケーションを開発しています。ユーザーがログインした後にのみルートをロードする

私は最初に利用可能なログインルートを持っていて、ユーザーがログインした後、私の残りのAPIは許可されたルートとアプリケーションレジスタのリストを提供したいと思っていますそのルート。

コード内のすべてのルートを公開して、誰かがそれを迷惑にならないようにし、承認されたユーザーのみがアクセスできるルートにアクセスしようとしないためです。特定のルートへのアクセスのみを許可するフィルタを実装できますが、(コード内の)保護されたパスを公開したくありません。

このアプローチは正しいですか?それを実装する方法はありますか?

+0

ルートを公開したくない場合は、サーバー側のログインページを使用して角度アプリを読み込むことを検討してください。必ずしもリダイレクトを必要としません...サーバに応じて適切なhtml/jsを出力するだけです。 – charlietfl

+0

@charlietfl私は理解していますが、サーバサイドコードを使用したくありません。私は、フロントエンドがCDNによって提供される静的コンテンツしか持たないようにしたい。 – karliwson

+0

この場合、実際にスクリプトへのアクセスを完全に阻止する方法はありません。そのため、ルートURLを遅延させても、それらのURLはスクリプトのURLに使用する必要があります。あなたが認証されていないユーザーのためにAPIから配信されるデータを証明することができます – charlietfl

答えて

0

あなたの最善の決定(私の意見では、2つの別の角度のアプリを構築することです:サインイン/サインアップ、パスワードを忘れました、プライベートなもののための第二。

この理由から、.jsファイルの異なるリストを持つ2つの別々のhtmlファイル(私が推測するサーバーベースのルーティング)を使用する必要があります。プライベートindex.htmlは、サーバー側からの直接アクセスから保護する必要があります。

また、jsファイルを動的に読み込むことができます。

関連する問題