locked
SSL環境でのWebサービスについて RRS feed

  • 質問

  • Silverlight 2 Beta1 についてですが他に頼れるところがなかったのでここで質問させてください。

     

    SSL環境下でSilverlightからWebサービスにアクセスすると以下のエラーが表示されてしまいます。

     

    ---

    via

    Parameter name: [InvalidUriScheme]

    引数:https,http

    デバッグ用のリソース文字列が利用できません。キーや引数に関する情報が問題の診断に役立つ場合があります。 http://go.microsoft.com/fwlink/?linkid=106663&Version=2.0.30226.2&File=System.ServiceModel.dll&Key=InvalidUriScheme を参照してください。

    ---

     

    SilverlightでのWebサービス定義はサービス参照からの追加を行っただけで、他の設定は行っておらず、

    Webサービス自体はVisualStudio2008でファイルの追加から作成したWebサービスの初期作成される

    'Hello World'を呼んでいるだけです。

     

    全く同じ環境でSSLを使用せずhttpで定義した場合は正常に動作します。

     

    SSL(https)からWebサービスを呼ぶことはBeta1では未対応なのでしょうか?

     

    リファレンスも一通り目を通したのですが解決できず困っております。

    よろしくお願い致します。

    2008年3月28日 9:52

回答

すべての返信

  • ちょっと手元では確認できていないのですが、そのサイトには証明書はインストールされているでしょうか。また、別件で https 経由でのクロスドメインアクセス(clientaccesspolicy.xml または crossdomain.xml で許諾)ができないという現象が確認されているようですので、それが原因かもしれません。

     

    この投稿は現状のまま何の保証もなく掲載しているものであり、何らかの権利を許諾するものでもありません。コミュニティにおけるマイクロソフト社員による発言やコメントは、マイクロソフトの正式な見解またはコメントではありません。詳しくは http://www.microsoft.com/japan/communities/msp.mspx をご覧ください。

    2008年4月1日 7:00
  • 証明書がインストールされていることは何度も確認していますし、
    クロスドメインアクセスの指定(clientaccesspolicy.xml または crossdomain.xml)
    は行っていないので関係ないと思うのですが。


    うーん。。。

     

     

     

    2008年4月2日 4:04
  • 既にご存知な上に役に立たない情報かもしれませんが‥。
    上記エラーを出している箇所はTransportChannelFactoryという内部クラスかと思います。

    internal void ValidateScheme(Uri via)
    {
    throw DiagnosticUtility.ExceptionUtility.ThrowHelperArgument("via", SR.GetString("InvalidUriScheme", new object[] { via.Scheme, this.Scheme }));
     }
    }


    該当箇所を見るに、元から保持しているScheme(http)に対して
    リクエストされたScheme(https)が合致しない、というエラーであるように推察できます。


    2008年4月2日 5:11
  • こんにちわ。森田 知良です。
    みなさんフォーラムのご利用ありがとうございます。

     

    ばったさん、有用な情報ありがとうございました。

     

    shinmoriさん、その後いかがでしょうか?
    ばったさんの情報は、有用な情報と判断しましたので、
    勝手ながら回答済みチェックを付けさせていただきました。

     

    追加の質問等ある場合は、是非もう一度投稿してくださるようお願いします。

     

    回答済みチェックが付くことにより、有用な情報を探している方が情報を見つけやすくなります。
    有効な回答があった場合は、なるべく回答済みボタンを押してチェックを付けてくださるようお願いします。

     

    なお、shinmoriさんの意図しない回答にチェックが付いていた場合は、
    回答済みチェックを解除することもできますのでご確認ください。


    それでは、これからもフォーラムのご利用をよろしくお願いいたします。

    2008年4月7日 6:10
  • 対応が遅れて申し訳ありませんでした。

     

    現状まだ解決していませんが、ばったさんに頂いた情報を元に調査中です。

    (私事でしばらく離れていたもので作業が遅れてしまってます)

     

    解決したらまた報告させて頂きたいと

    思います!

    皆様ご協力ありがとうございました。

    2008年4月8日 0:02
  • その後、解決はできましたでしょうか?

    私も同様の現象に悩んでいます。

    Webサービスからのエラーは「The provided URI scheme 'https' is invalid; expected 'http'.」といった感じです。

    ただ、Webサービスの呼び元はhttpsで始まっているサイトですし、Webサービスもhttpsで始まったURLです。

    SilverLight1.1で作っていた時はこのようなエラーはなかったのですが。

    2008年9月24日 10:04
  • 自己解決しました。

    ServiceReferences.ClientConfigファイルで

    security mode="None" となっているところを "Transport" にするだけでした。

    参考:http://msdn.microsoft.com/ja-jp/library/cc197941(VS.95).aspx ←一番下のほうに載ってます。

    2008年9月25日 5:52