Allow domain access only from mobile app and block website - .htaccess

I have my api on the same domain as my website (ex: www.xyz.com), I want to make this domain only accessible from mobile application (API calls), while at the same time, any user who would try to access the website on the same domain should be redirected to maintenance page. I've already searched google for this and I cannot find anything.
P.S: calls/requests from mobile goes first to a file called "delegator.php" on my domain (www.xyz.com), then the delegator redirects to corresponding controllers,

Related

Duplicate messages on Azure Web API

I am working on web application that has angular 4 on frontend and WEB API on backend. This application is hosted on MS Azure and until now we didn't have any issues.
Currently we need to integrate with one payment provider. During payment user is redirected to his payment page, and if everything goes well user is redirected back to our web site. Beside the browser redirect (which may fail) payment provider supports server to server call (HTTP GET). In this way they make sure we get information about the transaction. The problem here is that instead of one call to our Web API backend we get always two calls. After checking the request origin IP addresses I concluded that there is two origins (one is payment provider address and another is IP located in USA, which I assume belongs to MS). This looks to me like a routing problem, but I am not very experienced at this.
Did anybody have similar problem on Azure while hosting web application ?
According to your decription, it seems that fails for cross domain request. Azure website is supposed to manage CORS for you.
I think you missed a handy Azure website blade: Specify the origins that should be allowed to make cross-origin calls (for example: http://example.com:12345). To allow all, use "*" and remove all other origins from the list. Slashes are not allowed as part of domain or after TLD.
Cross-Origin Resource Sharing (CORS) allows JavaScript code running in a browser on an external host to interact with your backend. Specify the origins that should be allowed to make cross-origin calls (for example: http://example.com:12345). To allow all, use "*" and remove all other origins from the list. Slashes are not allowed as part of domain or after TLD.

How to log out from an Azure app-proxied website

I have an IIS website on a server internal to my domain that is also published via azure application proxy, which is secured using windows authentication. Our AD structure is hosted locally and published to Azure AD via AD connect.
Users visiting from outside the domain are authenticated first via the login.microsoftonline.com page.
My problem is that users external to the domain are on shared devices and need to change users occasionally, and I can't figure out how to do that.
I have read that navigating to an url like https://login.microsoftonline.com/{tenant id}/oauth2/logout?client_id={client id}&post_logout_redirect_uri={???} is supposed to achieve this, but after arriving at the login page and logging in as a different user, when we return to the site the user turns out not to be the user that authenticated, but remains the same user as before the attempt to change the user.
I have also read that deleting the cookies named like AzureAppProxyUserSessionCookie, AzureAppProxyAnalyticCookie and AzureAppProxyAccessCookie can help, but doing so does not seem to make any difference.
I thought that perhaps the browser was auto-authenticating or pre filling in forms etc, but turning those features off does not affect anything.
My questions are:
Are any log-off / log-on via Azure AD event logs kept that I can view, and if so, where?
How are you meant to log-off for my scenario?

Google API using Oauth for internal company use only

I've created a web application using Node.js that relies on a google API (specifically the DCM/DFA reporting API). It redirects the user to login to their gmail account, and after a successful login redirects back to the web application.
Suddenly my company has told me that this web application needs to be restricted to internal use only, and that they won't host it on a public domain for security reasons.
Is there any way to get Oauth to redirect to the internal domain? When I try to set the redirect domain in the google developers console I get an error message that it is not valid. Is there anyway around this?
The sample redirect url you can add at Console and Code is:
http://localhost:8080/authcallback
(Remember to not add trailing / in url)

Masking site's domain: Is it making it slower?

I own a domain in godaddy (rainychat.com), and i have a node/socket.io chat app hosted in openshift on a domain provided by them (rainychat-jgal.rhcloud.com)
I'm using "forwarding with masking" configuration on godaddy to make it so when a user enters rainychat.com, godaddy forwards the user to rainychat-jgal.rhcloud.com, but with the user seeing rainychat.com in the browser (You can try that now if you want).
My question is: As this is a chat app, is the user constantly going through godaddy first to reach my app because of the masking? I don't want my app to be slower because of this configuration. Is this the correct way to permanently direct a user to the site while still showing rainychat.com in the browser, or should i mess with DNS registery? Can i use .htaccess maybe?

How can I access multiple IIS sites with redirects from a mobile device?

I would like to do some tablet testing on a website I have. The website has two parts, both in separate projects.
Main site:
platform.local.samplesite.com
SSO site:
sso.local.samplesite.com
The issue:
I can access the main website remotely by ip. When redirected to the login, it tries to hit 'sso.local.samplesite.com', and cannot find that remotely, as it only knows the computer ip set to the main platform site.
General navigation would be:
Hit platform -> Get redirected to SSO site -> Sign in -> Get passed back and land on the main page of platform, all logged in
Currently I can hit the main platform site by adding a binding of HTTPS, IP Address all unassigned, using SSL certificate, and no host name. Then, from the mobile device, I hit the computer's IP address. This successfully gets me to the platform page, but then I am redirected and the tablet cannot see sso.local.samplesite.com.
Is there any way for me to have them both bound and successfully redirecting?
Would your redirect protocol on sso.local send you to the subsite once login was successful rather than redirecting back to the root site? This in theory would bypass your redirection, assuming you've set the redirection at server level bound to the domain?

Resources