• ベストアンサー

カード決済WebAPIへのSSL送信

・カード決済代行のWebAPIにカード番号や料金などを送信する ・送信する際の画面はSSL このときJavaScriptでセキュアにWebAPIに情報を送信する方法はどのようにすれば よいのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • dscripty
  • ベストアンサー率51% (166/325)
回答No.3

先ず、[ANo.2] へのお礼の中の質問にたいする回答ね。 「それが可能だったとしても、XmlHttpRequestの通信が暗号化された処理にできるのでしょうか...?」 暗号化通信(今回は SSL のことね) は、通信経路の安全性の話だから、XmlHttpRequest とは関連がない技術だよ。 つまり http: で出来るなら、https: でもできるということ。 XmlHttpRequest のリクエスト url が https:// からはじまるときのことを考えれば、納得できるかな? ここからは、いま思考実験中?の 「決済側のWebサービスが」クロスドメインの XmlHttpRequest でサービスを提供しているとしたら?の話ね。 一瞬、いい方式かなとおもったけど、一日落ち着いて考えたら、やっぱりだめだね。 一つ穴が見つかるとドンドン見つかる。 説明が一番簡単な部分を一つ指摘するよ。 1) SSL の安全性の確保は、最終的にユーザの目視に頼っている。 具体的にいうと、 ユーザがロケーションバーに表示されている URL のドメインをみて、「ああ、きちんと目的のサイトにきているな。」と確認することが必要だよ。 理由については、暗号化技術の理解が必要だから気が向いたら調べてみてね。 2) クロスドメインの XmlHttpRequest は、ユーザにクロスドメインへの通信を意識させない。 1) と 2) は同時に成り立たないよね。これだけでも、大きなセキュリティに対する脆弱性につならるから、たとえ出来たとしても止めた方がいいよ。

wikikuso
質問者

お礼

とても親切なご説明ありがとうございました。 非常に助かりました。

その他の回答 (2)

  • dscripty
  • ベストアンサー率51% (166/325)
回答No.2

通常はの手順は、リダイレクトで決済代行会社のウェブサイトへ転送して決済処理をさせるけど、転送じゃなくて、自分のウェブサイトのまま、xmlhttprequest で決済処理をしたい。という意味? もしそうなら、まず、ほかのドメインへの xmlhttprequest は制限されているからできないよ。 その制限を回避するのが Cross site resource sharering https://developer.mozilla.org/En/HTTP_Access_Control で、これはどのサイトからのクロスドメインリクエストを許可するか設定できるものみたいだけど、今回のケースだと、許可設定はカード決済代行会社のウェブサイト側がする必要がありそうだよ。 つまり、カード決済代行会社がこの Cross site resource sharering の Access Control を提供しているかどうかだけど、 もし、決済代行会社のめどをつけてるなら問い合わせてみたほうが早いかもね。 でも、この cross site resource sharering って対応しているかどうかはウェブブラウザ依存だから、ユーザの使うウェブブラウザを制限させることになるし、実用上どうなんだろうね。

wikikuso
質問者

お礼

ありがとうございます。 以下のURLの接続方式を検討しています。 http://www.cardservice.co.jp/service/connection/securelink.html 決済側のWebサービスがjsonでレスポンスしてくれる仕様であればクロスドメインで通信ができるのかと思いました。 それが可能だったとしても、 XmlHttpRequestの通信が暗号化された処理にできるのでしょうか...?

  • 0909union
  • ベストアンサー率39% (325/818)
回答No.1

>JavaScriptでセキュアにWebAPI 状況が説明されていません。 使用場所はどこなんですか? サーバーサイド、クライアントサイド? JavaScriptにWebAPIを直接呼び出す機能なんてありませんよ。 しかもWebAPIてなんですか? どこの言語?フレームワーク ECMA262 で検索しましょう。できるのはJScript

wikikuso
質問者

補足

HTTPSで通信されている入力フォームからクライアントサイドの JavaScriptで、 カード決済機能を提供している外部ドメインのWebサービスのURLにAJAX通信をしようとしています。

関連するQ&A

  • ネットショップ管理人 カード決済導入の仕組み

    お世話になります。 この度、知人がネットショップの開業を検討しており、 決済方法の1つに、クレジットカード決済を導入したいと言っております。 その中で ・「カード決済代行会社」や、 ・「クレジットカード会社(VISA、MASTERなど)」 があることを知りました。 例えば、カード決済代行会社にお支払いする料金に関して、  ・初期費用  ・月次基本料金  ・決済手数料(物販)  ・売上処理料金(円決済) 等が発生する点までは理解できました。 しかし、上記ですと、 (1)カード決済代行システム導入 (2)ユーザがショップからクレジットカードで商品を購入 (3)報酬は、カード決済代行会社にはいる ようになっていると思いました。 そこで、1つご質問なのですが、 ========================== 「カード決済代行会社」のシステムを導入した際、 ショップ管理者は、「カード決済代行会社」にのみ、 料金をお支払いする形でよろしいのでしょうか? ========================== 現在心配しているのは、予算以外の費用が発生してしまうことです。 上記内容について皆様からご教示いただけましたなら幸いです。 どうぞよろしくお願いします。

  • ショッピングカートのクレジット決済について

    タイトル通りショッピングカートをつけたいと思っています。 よくある形式で支払いはクレジットカードにしたいのですが SSLに対応しなければいけないなど初めてで概要すら よくわからないのですがどのような仕組みになっているのでしょうか? cgi,phpのフォーム設置などは経験がありますが 今回の件は初めてですので出来るだけわかりやすく 教えて頂ければ助かります。^^; よく決済代行サービスという言葉も聞きますが カードの決済番号などは重要な個人情報なので やはり代行の会社と提携した方が安全なのでしょうか?

  • SSLに対応した送信フォームをつくるには?

    このたび社内運営サイトでSSLを導入しようと検討しています。 送信された情報をメールソフトで受信したいのですが、この時きちっとSSLが効いた状態で受信させたいのが希望です。 PGPに対応したセキュアな送信フォームの制作が必要なようですが、プログラム言語は何が一番セキュアレベルが高く制作出来るでしょうか?(例えばPHPが良いとか)。 そしてその時、その言語で「スクリプト混入問題」を解消できるように(完全解消が無理ならばどこへ出してもおかしくないレベルに)プログラミングしたいのですが、良い教科書はないでしょうか? 現在したいと思っているのは、データベースと連動するまではなく、送信フォームから送信された情報を社内のメールソフト(Eudra)で受信し、あとはアナログで情報を社内へまわすといった形です。カード決済となるとサービスを利用していくのですが、今はそれ以前の段階として、とにかくお客様から送信された情報が届くまでの経路で「SSLがちゃんと効いています」「セキュアな送信フォームになっています」となるようにしたいのです。 どなたかご教授をぜひにお願いできれば嬉しいです。 それでは宜しくお願い致します。

  • 決済された側によるクレジットカード番号の取得

    決済代行会社などを通さずに カード番号と使用期限だけを入力して インターネットサイト上で買い物した際、 私の個人情報はどこまでサイト主に取得されるのでしょうか? 名前、暗証番号は入力していません。

  • ネットショップのカード決済について

    いつもお世話になります。 ネットショップを運営しております。 クレジットカード決済を某信販さんと直接で契約を済ませているのですが、 そのシステムがお客様にSSLを通じてカード番号、有効期限等の情報を弊社に送っていただいて、 こちらの端末にて信販さんの認証を得るという形になっており、 弊社にお客様のカード情報がわかってしまう様になっています。 もちろん、悪用するつもりはありませんがお客様のカードが不正使用された場合、 いらぬ疑いを抱かれるのでは?知らなくてもよい情報は知りたくないと思っています。 そんなわけで、契約はしたものの今だ利用しておりません。 みなさまにお聞きしたいのは (1)こういったカード情報がやりとりされるシステムが普通なのかどうか、  弊社の希望としましては、ヤフーオークションにおけるかんたん決済(旧ペイメント)  のように、カード情報のやり取りは無しで決済できるシステムです。  Webで調べたところ、信販さんとの直契約では上記のような情報をやりとりする形になっておりました (2)通販でご自分のカード情報がショップにわかってしまう事について消費者としてどう思われるか? (3)ある決済代行業者さんに問い合わせたところ、ペイメントのようなしくみで、  契約金40万、手数料7%と言うことでした。信販さん直で5%でしたのでこの2%は大きいかなと思っています。  この条件は一般的な相場なのでしょうか? よろしくお願い申し上げます。

  • オンラインショップ経営で、カード決済があるときに必要なこと、用具。

    オンラインショップをします(雇われ店長です)。そのお店、カード決済があるんですが、その決済も、代行などに頼らず自分でやろうと思います(はじめのうちは、客なぞそう多くないでしょうし)。そのときに必要な契約や、用具などはどこで揃えたらいいのでしょう。なんか、カード決済がきたときに、よくお店のレジ横にある、太い電卓みたいなのありますよね、カードを通してピッのような。それで、番号を入力して、それぞれのカード会社に情報を送るのですよね。そういった器具など、揃えたいのですが、どこで行うものなのでしょうか?検索で見ても、引き方が悪いのか、代行会社ばっかり!(すごいありますね)がでてきます。ご教授お願いいたします。

  • Webアプリでのカード決済について

    現在、PHPでWebアプリを製作しております。 月額課金でサービスを提供したく決済はカード決済を考えています。 利用するユーザーが登録する際に、名前等の個人情報に加え カード情報を入力してもらい、カード決済が完了した時点で 自動的にDBへ登録し、利用可能になるというものです。 カード決済は代行サービスを利用したいのですが BlueGateの画面連携やゼウスのリンク型サービスと同様のもので他会社が行っているサービスはありませんでしょうか? また、自サーバーのPHPシステムと連携を取れるような決済サービスについて詳しく解説されているサイト等はありますでしょうか? ご教授下さい。 ttp://solution.cafis.jp/BlueGate/ ttp://www.cardservice.co.jp/service/connection/linkpoint.html

    • ベストアンサー
    • PHP
  • SSLの安全性について

    これまでインターネット上では、絶対にクレジットカードの番号などを入力しない主義でやってきました。ところがずっと探しつづけていてどうしてもほしい品が、カード決済でしか買えないことが判明。SSL対応だから心配ない、というのですが、SSLって本当に100パーセント安全なんでしょうか。

  • WEBサイトへクレジットカード決済画面設置方法について

    ショッピングサイトを運営しております。 クレジットカード決済代行会社と契約致しましたが、決済代行会社から提供された決済画面はパスワードを入力しないと開けません。 以下の方法で決済したいと思っております。 ・ホームページからお客様がパスワード入力なしで決済画面へリンクして決済 ・お客様に決済画面のURLを教えて、お客様がパスワード入力なしで決済画面を開いて決済 ・ショッピングカートに決済画面を連動させて決済 決済代行会社からはマニュアルだけ渡されました。マニュアルを見るといずれの方法も設定可能と思われますが、マニュアルを見ても素人にはできそうにありません。決済代行会社では設置についてサポートはしてくれないようです。 おそらくCGIの知識が必要と思われます。 CGIの知識も無い私に簡単に設定ができるものなのでしょうか? または業者に依頼すればよいのでしょうか? その際の費用はどのくらいかかるのでしょうか? また専門業者をご存知の方は教えてください。 よろしくお願い致します。

    • 締切済み
    • CGI
  • 海外への販売 カード決済について

    小さな製造メーカーで働いています。 海外からの購入依頼もあるのでクレジットカードの決済代行サービスを導入していますが、海外発行カードが承認エラーになることが多く困っています。 セキュリティーレベルの違いと思われ、現在使用している代行会社では対応しきれないと判断し、他社の情報を色々調べていますが判断できません。 また、こちらの質問履歴などでも PayPal が多く出ていますが、PayPal のシステムが今ひとつよく解りません。 海外(特にアメリカ)ではクレジットカードと同じような利便性なのでしょうか?(もしくは更に高いですか?) だとすると、わざわざ決済代行会社を変えるよりも PayPal を取り入れれば充分だということでしょうか? また、お勧めの決済代行サービスは無いでしょうか? どんな情報でもいただければ助かります。 どうぞよろしくお願い致します。

専門家に質問してみよう