Skip to content

Instantly share code, notes, and snippets.

Bill Wilder codingoutloud

Block or report user

Report or block codingoutloud

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View check-azure-sql-db-logins.sql
-- Turn on Audit Logging to Blob for your Azure SQL Database. Then you can query who has logged in.
-- The example below assumes DB Server-level audit logging. Details will vary slightly for Database-level audit logging.
-- The example below shows who logged in so far today.
-- Change "-0" to "-1" to look at yesterday (from a UTC perspective, not your local timezone).
-- Change "-0" to "-100" to look at 100 days ago.
SELECT FORMATMESSAGE('%s (%s)', CAST(DATEADD(day, -0, CONVERT(date, SYSUTCDATETIME())) as varchar),
DATENAME(WEEKDAY, DATEADD(day, -0, SYSUTCDATETIME()))),
server_principal_name,
COUNT(server_principal_name) as 'Logins'
FROM sys.fn_get_audit_file(FORMATMESSAGE('https://<MYBLOB>.blob.core.windows.net/sqldbauditlogs/<MYDBSERVER>/<MYDB>/SqlDbAuditing_ServerAudit/%s/'
View ReportBlockedByCSP
#r "Newtonsoft.Json"
using System.Net;
using System.Text;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
#r "Newtonsoft.Json"
using System.Net;
@codingoutloud
codingoutloud / run.csx
Created Mar 25, 2018
Get User Agent Summary from within an Azure Function using whatismybrowser.com API
View run.csx
#r "Newtonsoft.Json"
using System.Net;
using System.Net.Http;
using System.Text;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Primitives;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
@codingoutloud
codingoutloud / IpTools.psm1
Created Jan 29, 2018
PowerShell module for IP address tools
View IpTools.psm1
# put this in some shared module folder, such as /usr/local/share/powershell/Modules
Function Get-IpCountry {
param([String]$ip="9.9.9.9")
$country = Invoke-RestMethod -Method GET -Uri https://ipinfo.io/$ip/country
return $country
}
@codingoutloud
codingoutloud / gitpush.ps1
Last active Dec 1, 2017
Simple mode to continually push from a remote machine to a git repo
View gitpush.ps1
git add --all
git commit --all -m "Update"
git push
@codingoutloud
codingoutloud / Publish-CertFromKeyVaultToWebApp.ps1
Created Nov 21, 2017
Get an SSL Cert from Key Vault and push it to a Web App
View Publish-CertFromKeyVaultToWebApp.ps1
Login-AzureRmAccount
Select-AzureRmSubscription -SubscriptionName AzureFAQ # subscription where the Web App resides
$webAppName = "pageofphotos" # Web App resource Name, (Get-AzureRmWebApp)[0].Name
$fqdn = "pageofphotos.com" # what is the DNS address? could be admin.pageofphotos.com if that's what's mapped
$vaultName = "GlobalOpsVault"
$certificateName = "MySSL"
$passwordLength = 50
@codingoutloud
codingoutloud / AzureFunctionRandomQuote.js
Created Sep 14, 2017
Simple "hello world"-level web page intended for use with Azure Functions - paste this text into a JavaScript HTTP trigger, upload project.json to kudu, and set up MOVIE_API_KEY as an environment variable.
View AzureFunctionRandomQuote.js
var request = require('request');
module.exports = function (context, req) {
context.log('JavaScript HTTP trigger function processed a request.');
var html = "<html><body><h1>didn't work</h1></body></html>"
var movieApiUrl = 'https://andruxnet-random-famous-quotes.p.mashape.com/?cat=movies&count=10';
// go get your own API key: https://market.mashape.com/andruxnet/random-famous-quotes#get-endpoint
var movieApiKey = process.env['MOVIE_API_KEY'];
// context.log('MOVIE API KEY = ' + movieApiKey);
@codingoutloud
codingoutloud / http-get-repeatedly.sh
Created Sep 7, 2017
Usage: http-get-repeatedly.sh [number of times to repeat] -- no param means once.
View http-get-repeatedly.sh
#!/bin/bash
URL="https://prod-24.southcentralus.logic.azure.com:443/workflows/62d71dadbb0b451bb8de9f27c9e51f93/triggers/manual/paths/invoke?api-version=2016-06-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=8HpJbLEcF078jtVgBZoMpWA65sZDI8_nowFVINX8HK0"
for i in `seq 1 $1`;
do
echo $i
curl "$URL"
done
@codingoutloud
codingoutloud / Fail75.js
Created Sep 7, 2017
Code for an Azure Function that sometimes returns failure (on purposes, 75% of the time, useful for testing)
View Fail75.js
module.exports = function (context, req) {
if (Math.random() > 0.75) {
context.log('Azure Function "Fail75" is randomly (25%) returning 200 OK.');
context.res = {
body: "Randomly (25%) returning 200 OK."
}
}
else {
context.log('Azure Function "Fail75" is randomly (75%) returning 500 as a transient error.');
context.res = {
View geo-ip-services.txt
GEO IP SERVICES
FORMAT: URL - LOWEST ACCESS TIER - NOTES
https://ipinfo.io/pricing - 1,000/day free - $50/m for 10,000/day with support
https://freegeoip.net/?q=23.196.102.76 - 15,000/hour free - open source https://github.com/fiorix/freegeoip
https://www.maxmind.com/en/geoip2-precision-demo -
http://geoiplookup.net/ - NO API - interactive only
https://www.ultratools.com/tools/ipWhoisLookupResult - NO API - interactive only
https://geoiptool.com/en/?ip=23.196.102.76 - NO API - interactive only
http://www.hostip.info/index.html - not looking promising - attributed my Boston-area IP as being in LA with Verizon
http://ipinfodb.com/ip_location_api.php - free API, but need API key and single IP address to source requests from - also has a commercial DB dowload ("The IPInfoDB.com has a goal of providing high-quality geolocation service to all users for free.")
You can’t perform that action at this time.