cloud function rewrite 302 - google-cloud-functions

We have a website that uses firebase rewrites with cloud functions. Depending on my computers or accounts running firebase deploy --only functions,hosting results in an error sometimes. The error is 302 with redirect request prompting a login screen: https://us-central1-foo.cloudfunctions.net/_ah/conflogin?continue=https://us-central1-foo.cloudfunctions.net/get-calendars/api/calendars
"rewrites": [{
"source": "/api/calendar",
"function": "get-calendar"
}
]
I am still not sure what exactly is a root issue but I suspect firebase deploy is causing the problem. I have tried deploying the sames files with different settings:
I have accounts A, B and three machines (linux 1, linux 2, mac)
Deploying on linux 1 with account A has the problem
Deploying on mac with account A works fine
Deploying on linux 2 with account B works fine
I created the files for deployment on linux 1. What confuses me is account A works ok on mac but not on linux because I was suspecting an auth or permission issue. Does anyone know what causes my problem?

Related

Trying to launch json server in my localhost but states that the local host never sent date

i'm new to coding and right now i'm learning to launch json server through VSC in my bootcamp (flatiron). I'm having trouble with opening it in my localhost file in my google browser. I'm running Ubuntu on my PC. when I installed npm install -g json-server it stated that I have 4 moderate severity vulnerabilities.
I have tried to turn off my firewalls and antivirus, cleared the chrome history, tried to change my DNS and had no luck.
I've been stuck with this issue for 2 days now, please help !
[this is what local host is stating in the web browser1
This is the vulnerabilities being shown

Self signed certificate for communication between local Win10 native app and web app

Background: I have a web app that is accessed via Chrome on a Windows 10 machine.
I also have a native Win10 application installed on the device. The web app sends data to the Win10 application via a local web service running on the machine in IISExpress.
To allow for HTTPS communication on port 44300, I've created a self-signed certificate via PowerShell:
New-SelfSignedCertificate -DnsName "localhost" -CertStoreLocation "cert:\LocalMachine\My" -NotAfter (Get-Date).AddMonths(60)
And then imported it to 'Local Computer\Trusted Root Certificates\Certificates'
From within the web app I send a command to the win10 app that looks something like this:
https://localhost:44300/CMTService.svc/JumpToAssignment?Param=Key=418584577
The win10 app is polling for these requests and picks up the message.
Issue:
Different versions of Chrome behave differently with the acceptance of the self-signed certificate. For instance versions 62, 64 and 75 all accept the certificate and allow for communication with the web service. But other versions of Chrome like 76 and 78 block communication. The Security tab in the Chrome DevTools shows https://localhost:44300 as "Unknown / cancelled" and my requests fail with ERR_SSL_CLIENT_AUTH_CERT_NEEDED. Whereas in working versions of Chrome my URL shows under "Secure origins". The only thing that I change is the Chrome version to get these different results.
I've tried enabling the Chrome setting to allow for invalid certs for localhost (chrome://flags/#allow-insecure-localhost). This temporarily works, but then after closing and reopening chrome, my requests start failing again with the same error code.
If I take one of my failing URLs and paste it into a new Chrome tab, suddenly communication with my native app in my web app resumes as normal. But it only works for that session - when I close and reopen Chrome my communication is broken again.
Question:
How do I allow for communication between my Chrome v78 web app and my local native app?
ERR_SSL_CLIENT_AUTH_CERT_NEEDED means the server is asking the browser for a certificate for client authentication.
You've described how you setup server authentication, but not described how you setup client authentication.
Likely you have enabled certificates for client authentication, but have not configured the web app to send the correct client certificate or have not configured the native app to accept the correct client certificate. That's a very open ended topic to be prescriptive without knowing more about your development efforts, but you can confirm if client authentication is enabled by inspecting a packet capture. One description of the handshake is here : https://blogs.technet.microsoft.com/nettracer/2013/12/30/how-it-works-on-the-wire-iis-http-client-certificate-authentication/.
Just an update: I implemented a javascript workaround to get around my communication issues. When first loading the web app, I simply send my first communication to IIS (destined for Win10 native app) in a separate chrome browser tab. For whatever reason this allows for successful acceptance of the certificate and kick starts the communication with IIS. This is my code to send the command in a new tab and then close it:
var inst = window.open(launchWinAppURL);
if (inst != null) {
window.setTimeout(function() {
inst.close();
}, 1000);
}
This is not the most elegant solution, but it seems to work on all chrome versions, so i'm satisfied.
Is the web app only communicating with the one win10 machine? Have you installed the self-signed cert directly to the machine? I would try installing it directly to the machine and see if the later instances of chrome allow communication.

Chrome Remote Desktop on Windows 2012R2 Virtual Machine at Google Compute Engine

I have a Windows 2012R2 instance running at GCE and successfully can log in via "Chrome RDP", a Chrome RDP client that is launched by the Developer Console if you click on RDP. I also used the "Chrome RDP" Chrome Web Store App via an ssh tunnel to a linux instance in the same project and network.
I then installed Google Chrome and set up access via "Chrome Remote Desktop", but when I access the box, the screen is just a big black square. I think this is all related to the fact that there is no "Display Adapter" section in the "Device Manager".
I'm hoping someone could tell me what the requirements are to run "Chrome Remote Desktop" on a virtual machine with no monitor installed that has no "Display Adapter" drivers.
I wasn't able to reproduce the issue as I was able to remote into my VM using the "Chrome Remote Desktop". The only thing I could think of is that you might need to update Chrome and Remote Desktop App.
Another thing to try is to create a new Windows 2012R2 instance and see if you can use the Chrome Remote Desktop to log into it before making any changes to the instance.

Remote Control via TeamViewer on a Google Compute VM Instance

I am running a Windows Server VM Instace on Google Compute Services... I can access the instace via the "Windows Remote Desktop" no problem... I could install Team Viewer on the instance...
Because of Firewall issues I cannot run "Windows Remote Desktop" from my desktop to access that VM (google compute) Instance... Reason of why I installed Team Viewer on that VM instance...
The funny thing is that I can access that VM instance through Team Viewer Only, as long as it is connected through "Windows Remote Desktop" to a separate 3rd computer... (4G internet outside the firewall --of desktop trying to access the VM Instace through Team Viewer--).
Even if I minimize the "Windows Remote Desktop"on my laptop it will cut the connection through TeamViewer between the VM cloud instance and my Desktop computer...
Any help or ideas in there? It seems that either Team Viewer isn't able to start or somehow either the VM Windows Server screen only runs when the "Windows Remote Desktop" is running....
As I get this message:
"The screen cannot be captured at the moment. This is probably due to fast user switching or a disconnected/minimized Remote Desktop Session."
I did a complete version installation of TeamViewer as administrator, running on a Windows Server on google compute VM.
Hopefully someone out there can help me! I don't know if it may be part of the Google Compute Services Instance settings so as to limit the remote desktop only to the native "Windows Remote Desktop" program... Or perhaps a setting were since it's a VM the screen is de-activated when the "Windows Remote Desktop" program is off or minimized etc...??
My main problem is having TeamViewer work without having to initiate the native Windows RDP... In order for TeamViewer do it's job and take its place... as in the place where I am located (my desktop computer) the firewall blocks Windows RDP but does not block TeamViewer's.
I tried changing the listening port to different numbers....
According to the instructions here:
http://support.microsoft.com/kb/306759 and here:
http://support.microsoft.com/kb/304304/
Unfortunately.. when I changed it and then rebooted the Win Server 2008 VM, and checked to see if it made the change... I noticed it goes back to be on the same port again.... (of course to connect I had to do it through the original port)...
So it changes it but on rebooting it goes back to be on the same port again... I don't know if it's either because the new port was being used or there is a policy somewhere directing it always to the original port again...
I enabled those ports also to work for RDP in the Google Compute Instance interface, but still it made no difference...
It doesn't seem TeamViewer has a setting to change the port it connects with etc...
Hopefully I can find someone knowing about this issue.... The AWS instance used to work fine with LogMe In at the time.... I may end up using AWS (Amazon Web Services) again as Google Compute Srvs. won't do the job... but it's much cheaper than the AWS isntance... Thanks for helping...
In my case it happened due to slower network speed on the other side, of which I intend to take session.

VisualSVN messed up my localhost in Chrome

EDIT:
The localhost seem to be working fine in my firefox, IE and even Chrome's incognito mode. These is a problem specific to chrome. Any ideas?
PREVIOUS:
I just uninstalled VisualSVN Server from my Windows 7. But now when I try to hit localhost, I get redirected to localhost/svn. I am using WAMP and developing something that requires the root access. I can not put the project in a sub directory. I have also tried netstat -ao but no process is using ports 80 or 443.
You may have solved the problem....but for future, those who came here like me looking for a solution to this, this seems to be a prob for browser cache....clearing browser cache history solves the problem.....did for me...
If you uninstalled VisualSVN Server, then it's some other application which runs on 80 / 443 port that redirects you to /svn. Some steps that may help you to determine the root cause:
Verify that VisualSVN Server has been successfully uninstalled.
Start appwiz.cpl and see whether VisualSVN Server is listed as the installed application,
Start services.msc and see whether "VisualSVN Server" service is listed.
Run netstat -anbv and see which app runs on HTTP(S) port.