私はウェブサイトを構築しています。このサイトのフロントエンドページは、AJAX
経由で/からサーバーにデータを取得/送信する必要があり、サーバーは同じAPIを他のアプリケーション(非プライベートアプリ、パブリックではなく、同じ第1クラスドメイン)に提供します。フロントエンドや他のサーバーに公開されているAPIのセキュリティを確保するにはどうすればよいですか?
たとえば、POST /api/users
を使用して新しいユーザーを作成します。このサイトは登録ページを提供し、このAPIを使用してユーザーを登録します(AJAX
経由)。他のアプリもこのAPIを使用してユーザーを登録できるようにしたいと思います。
一般に、ハッシュされた文字列を使用して、他のアプリからのリクエストを認証します。しかし、私はフロントページに同じことをすることはできないと思う。
フロントページと他のアプリを別々に使用する2つのAPIを使いたくありません。だから私はこれをどのようにすることができますか?
私はNode.jsとExpressを使用しています。
「他のアプリ」とはどういう意味ですか? 「他のアプリ」とフロントエンドのページが異なるのはなぜですか? – Cristy
@Cristy外部アプリを使うと、CORSの問題も発生する可能性があります。 – krillgar
@Cristyたとえば、ドメインa.abc.comの下のこのサイトには、登録ページがあります。ドメインb.abc.com(はい、同じ第1クラスドメイン)の下に別のサイトがあり、ユーザー登録が登録要求を送信すると、bサイトは実際にサイト(サーバーからサーバー)にデータを登録して登録します。 bサイトは「他のアプリ」の1つです。 –