Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Shiny App Embed: HTTP iframe conflicting with HTTPS #148

Open
nicklucius opened this issue Aug 8, 2017 · 6 comments
Open

Shiny App Embed: HTTP iframe conflicting with HTTPS #148

nicklucius opened this issue Aug 8, 2017 · 6 comments

Comments

@nicklucius
Copy link
Collaborator

@tomschenkjr - it looks like AWS has a UI for adding HTTPS, but it only works with EC2 instances that use Elastic Load Balancing or CloudFront--I'm not sure that we use either: https://aws.amazon.com/blogs/aws/new-aws-certificate-manager-deploy-ssltls-based-apps-on-aws/.

If we create our own certificate, we'll still might get blocked by browsers: https://www.r-bloggers.com/shiny-https-securing-shiny-open-source-with-ssl/

New GitHub Pages are HTTPS only: https://github.com/blog/2186-https-for-github-pages

It looks like a third party certificate might be the only way.

@nicklucius nicklucius added this to the Project website milestone Aug 8, 2017
@tomschenkjr
Copy link
Contributor

tomschenkjr commented Aug 8, 2017 via email

@tomschenkjr
Copy link
Contributor

Here are some instructions on a Shiny app and a certificate https://www.r-bloggers.com/shiny-https-securing-shiny-open-source-with-ssl/

@tomschenkjr
Copy link
Contributor

It appears the HTTPS enforce is only for the index page. However, it is not enforced by default when going to the challenge/ page. Thus, I've updated the links to point to http for the app to avoid the mixed-content errors.

When we get a chance, let's grab a certificate and post it to the EC2 instance. But, at least, it's not a pressing matter.

@tomschenkjr tomschenkjr removed this from the Project website milestone Aug 14, 2017
@tomschenkjr
Copy link
Contributor

@nicklucius - for @ThorSean upcoming article, he's hitting some HTTPS mixed-content issues. I don't think we can sidestep it this time. Can you take a look at adding a token. This may be a viable, free option.

Let me know if this is shaping-up to be a complete pain.

@nicklucius
Copy link
Collaborator Author

@tomschenkjr - no problem, I'll look into this.

@nicklucius
Copy link
Collaborator Author

@tomschenkjr - I ran into a problem with Let's Encrypt. They blacklist EC2 domain names. Here is my error when generating a certificate:

Error: urn:acme:error:rejectedIdentifier :: Error creating new authz :: Policy forbids issuing for name

And here is a discussion that confirms this is a problem for EC2 domains.

If we could get a *.cityofchicago.org domain that points to ec2-52-54-246-48.compute-1.amazonaws.com, then I could get an SSL certificate installed. Alternatively, we could get a second EC2 instance set up mirroring the first, configure load balancing, and then use AWS's own HTTPS manager. I can't think of any other way.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants