質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Ionic

Ionicは、クロスプラットフォームに対応したモバイルアプリ開発のためのオープンソースUIフレームワークです。iOSやAndroid、Webのアプリケーションを1つのコードベースで開発できます。

HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

AngularJS

AngularJSはオープンソースのJavaScriptフレームワークです。ブラウザ上で動作するウェブアプリケーションの開発にMVCアーキテクチャを取り入れることを目的としています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

Q&A

解決済

2回答

7906閲覧

自己証明書を使ったHTTPS通信について(Monaca, Ionic, Angular, iOS)

yas2016

総合スコア11

Ionic

Ionicは、クロスプラットフォームに対応したモバイルアプリ開発のためのオープンソースUIフレームワークです。iOSやAndroid、Webのアプリケーションを1つのコードベースで開発できます。

HTTPS

HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

AngularJS

AngularJSはオープンソースのJavaScriptフレームワークです。ブラウザ上で動作するウェブアプリケーションの開発にMVCアーキテクチャを取り入れることを目的としています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

0グッド

1クリップ

投稿2016/11/09 05:54

###前提・実現したいこと
Monaca IDEで、Ionic+Angularを利用して、HTTPSで自分で立てた
サーバからデータ取得をしようとしています。
サーバには自己証明書を実装しています。

以下のコードでサーバにアクセスしているのですが、
Androidでは成功するのですが、iOSでは常に失敗します。

$http.get('https://server-global-IP/') .success(function(data, status, headers,config){ alert("success!"); }) .error(function(data, status, headers,config){ alert("error"); });

なお、httpで通信した場合は、AndroidでもiOSでも成功します。

$http.get('http://date.jsontest.com/') .success(function(data, status, headers,config){ alert("success!"); }) .error(function(data, status, headers,config){ alert("error"); });

SSL証明書が自己証明書のためiOSで失敗しているのではないかと
思うのですが、Monacaで自己証明書でのアクセスを許可するため
にはどうすればいいのでしょうか?

なお、OSのバージョンは
iOS:10.0.2(iPhone)
Android:6.0
です。

また、インターネットで以下の記事を見つけたのですが、Monaca
では対象のファイル(project/platforms/ios/Project/Classes/AppDelegate.m)
が存在していませんでした。
http://ivancevich.me/articles/ignoring-invalid-ssl-certificates-on-cordova-android-ios/
よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

直接的な回答ではないので恐縮ですが、いっそのこと自己証明書の代わりにLet's Encryptを利用するというのはいかがでしょうか。
無償で証明書の取得が可能です。
https://letsencrypt.jp/
うちでは開発機で良く使っています(^^;
そういう問題ではないということであれば、ご容赦ください。

投稿2016/11/09 08:18

編集2016/11/09 08:19
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yas2016

2016/11/09 22:41

こんなサービスがあったんですね。 教えていただいたLet's SSLを実装して解決しました。 大変ありがとうございました。
guest

0

monacaを使った事がないのでサーバー側でできる事はよくわからないため、iOS側での対応ですが、
オレオレ証明書が信用できないから接続ができないというのであればオレオレ証明書を信用できる認証局のものと同等にあつかうようにiOS側にルート証明書をインストールすればいけるのではないかなと思います。

http://security.data-site.info/291.html
とか
https://digitalfan.jp/108213
を参照

テストが終わったら削除した方がいいと思います。

投稿2016/11/09 07:26

hiim

総合スコア1689

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yas2016

2016/11/09 22:43

ありがとうございました。 今回端末側の変更が必要ないことからLet's SSLの案を採用させていただきました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問