I added the certificate to my device and to the simulator. If I go to the https site from Safari it works fine. If I try to do the same from my iPad Air it fails with error "the certificate is invalid.You might be connecting to a server that is pretending ..."
Why would it work from Safari but not from my app?
Thanks for any help.
If you already installed/trusted the self-signed certificate on your computer then Safari (your desktop browser) won't prompt you, whereas on iOS you haven't opted to trust the certificate. Note that iOS 7+ does not let you see which certificates you have already trusted, you can only choose "Reset Settings" to remove all trust (silly, I know).
Related
I am trying to log in to a Flutter application via SAML, this requires loading a Webview at an https endpoint which will then perform some redirects.
As I am developing this application I need to hit a local https endpoint to start the process, which is backed by a self signed certificate. I also have a self signed CA certificate.
I have added the CA certificate to the Android emulator I am using to test (default emulator from Android Studio) and it appears under the "User" tab under Trusted Credentials. However, when I set the Webview to navigate to my local https endpoint it displays a white screen.
I have tested this further by running MITM proxy, installing their cert at mitm.it (which is also installed as a "User" cert), and navigating the Webview to http://google.com. I can watch the traffic and see that it returns a redirect to https://google.com, but the Webview never loads that page and instead displays the white page again. I believe this is because it doesn't trust the User cert for mitm.
I see 2 possible ways of solving this:
Force webview_flutter to use the User certs and not only System.
Allow webview_flutter to ignore any certificate errors.
I am trying to implement APNS for my App and am hitting a wall while trying to generate a provisioning profile. I followed the instructions to create an APP id and was able to generate an SSL certificate for my App (the type is shown to be APNs development IOS). However, when I try to generate a provisioning profile, following the screen where I choose the AppID of my app, I do not see the SSL certificate I generate for this app. In the certificates list, I only see a certificate of type 'IOS development' that was created previously. I have been stuck on this issue for a while. Can someone please help?
Thanks
I resolved my own query. we need to add iOS development certificate while creating profile for APNS. You should have the p12 of that iOS development certificate.
this is my problem,
i've installed my ssl certificate on my website in order to use it in my facebook app.
entering the site in https mode is working fine, perfectly, so i create my facebook app, but when i try to install in the canvas i receive this message:
ssl_error_rx_record_too_long
so i think my ssl doesn't work fine with facebook, i'm wondering what type of ssl certificate i need to make my app workin fine.
there is no list of facebook talking about the kind of ssl, anybody can give me more info about this problem?
thak's in advance to all the people that will suggest me something
I'm trying to automate some stuff which involves browsing to a https url. I'm using py-appscript with Safari on Mac OS X. But when Safari navigates to the https URL, since I have a self-signed certificate, it throws up a popup window which asks you to accept it to continue. I could not figure out a way to do this. Sure using signed certificates will solve the problem but I was curious if it is even possible via appscript to accept or click on the popup dialog boxes on Safari?
Well, answering my own question. Hopefully it'll be useful to someone...
from appscript import *
app(u'Safari').activate()
title = app(u'Safari').do_JavaScript(u'document.title', in_=app.documents[1])
app(u'Safari').documents[1].URL.set(u'https://localhost/')
app(u'System Events').application_processes[u'Safari'].windows[title].sheets[1].groups[2].UI_elements[u'Continue'].click()
I'm at the point where I'm ready to submit an app - an Apple doesn't elaborate much on how to sign and submit apps. I have both the WWDRCA certificate and one I created but am at a loss on where to put them.. do I add them via drag n' drop into XCode? Why do I need the WWDRCA? Anyone have any info on this? Would be GREATLY appreciated
First, make sure you have correctly installed the Installer, Developer and WWDR certs in your Keychain.
In Xcode, edit your target build settings and under 'Code signing entity' and select your Developer certificate. Then build your app using 'Build and Archive'. Finally, open Organizer (via Window menu) to verify and submit your app.
At least, that's the theory. I agree that it's tricky. The Apple Developer Forums have several instructive postings about the potential pitfalls. Good luck!
Edit: Dang, I missed that it's about the Mac App Store, my post is about iOS... For the Mac App Store, there's also a document from Apple and a checklist with links. That checklist seems like a good starting point for all the relevant information.
Original iOS related post:
If you log in to the Provisioning Portal, Apple explains in detail how to get and use a certificate (now even with videos). Right when you login to the portal, see the right column. Or click on the "Certificates" link on the left and then on the "How to" tab. It's step-by-step guide with screenshots. Also, see the "Provisioning" section in the left meny, again click the "How to" tab. For submitting, see the "Distribution" section in the menu on the left. If you still have specific question after reading/watching that material, go ahead and ask.
You need the WWDR CA certificate so that your keychain and Xcode can actually validate your certificate. Certificates are signed by other certificates and form a chain of trust. But there has to be a start, and that is the CA certificate for which you first explicitly state "Yes, I trust this certificate" and thus all certificates that were signed by it.
This is also how your browser works with HTTPS: your browser comes with a bunch of CA certificates that it trusts by default, for example the CA certificate from Verisign. And if your browser then sees a certificate that was signed by Verisign it knows it can trust that website since it already trusts the Verisign CA.