2017-10-20 3 views
1

私は、JavaScriptをウェブサイト全体のメソッドにアクセスするために、JavaScriptをajaxで使用したいので、Webサービスを作成しました。私はこれに新しいです。しかし、私はちょうどasmxがブラウザ経由でアクセス可能であることに気づき、メソッドからのデータのテストページとxml出力を示しています。 WebサービスのこのUIを無効にする方法はありますか?私は彼らが呼び出されるときに、javascriptメソッドにデータを返すだけです。ブラウザでWebサービスにアクセスできないようにしますか?

+2

いいえ、あなたはインターネット上のどのクライアントからでもアクセスできます。 HTTPリクエストのもう一方の終わりに何があるかを決して伝えることはできません。保護されたサービスが必要な場合は、認証されたセッションメカニズムの一種の背後にそれを保護します。 – Pointy

+1

あなたが話す「テスト」ページはかなり正常です。 WebサービスはWSDL(Web Service Description Language)ドキュメントで公開されており、これはあなたが見ているドキュメントです。これは、クライアントに利用可能なものとそのメソッドの呼び出し方法を伝えるものです。 –

+0

あなたはヘッダーを送信してサーバーをチェックすることができますが、だれでもヘッダーをスプーフできます – epascarello

答えて

1

を見ることができる私はあなたが使用している.NET Webサービスのバージョンがわからないんだけど、あなたはローカルで、とにかく一般的にのみ利用可能であるWebサービスのヘルプページを無効にすることができます。また、WSDLの生成も無効になることがあります。 https://msdn.microsoft.com/en-us/library/2tyf2t8t(v=vs.100).aspxまたはhttps://www.thecodingforums.com/threads/how-to-disable-modify-the-default-test-pages-for-asmx-web-services.786001/

他のユーザーがあなたのWebサービスに一般にアクセスしないようにするには、認証方法も検討する必要があります。

+0

ありがとう。今のところ、私は公開されているデータしか公開していません。私は各ユーザーのGUIDを生成しており、それらのユーザーのデータのみを提供しています。ですから、GUIDをサーバーに残してフロントエンドに公開することはないので、問題ありません。 –

0

私の知る限りではありません。 asmxは機密データを表示すべきではありません。それはあなたには問題があります。

おそらく見ているXMLデータはWSDLです。これは悪いことではありません。実際、消費者はWebServiceの構造を知ることができます。これに関する詳細については、あなたがthis apge

1

あなたのブラウザでの操作と同じように、あなたのウェブサービスにJavaScriptがアクセスします。あなたのブラウザからサービスを閉じ、あなたのjavascriptのためにそれを閉じます。

基本的には、あなたが入ることができる(完全な意味があります)ためにあなたの家にドアを作ったと言いますが、誰もがドアを見ることができるので心配しています(htat !)それを使用してください(あなたの本当の問題です!)。
あなたは何をしていますか?あなたはドアに鍵をかけます。

それはドアを見えないようにしませんが、間違った人々を引き留めます。

Webサービスでも同じことを実行します。認証/認可を実装します。

サイドノート:それは2017です。私はまだ人々が.asmxを使用しているのか分かりませんでした。 WCFを見てみると、2010年には古いasmx Webサービスを置き換えたことになります。

+0

私は最近、Webフォームで構築されたレガシーシステムで働いていた会社でインターンすることで.NETを学びました。だから私は古い方法を学びましたが、私は古い技術を使い続けることを理解しています。 WCFを学び続けてください。ありがとう –

関連する問題