Skip to content

Instantly share code, notes, and snippets.

View tiesont's full-sized avatar

Tieson Trowbridge tiesont

View GitHub Profile
@tiesont
tiesont / SecurityProvider.cs
Created May 10, 2014 21:55
Partial class for plugging into FluentSecurity
public partial class SecurityProvider
{
public static bool ActionIsAllowedForUser(string controllerName, string actionName)
{
var configuration = SecurityConfiguration.Get<MvcConfiguration>();
var policyContainer = configuration.Runtime.PolicyContainers.GetContainerFor(controllerName, actionName);
if (policyContainer != null)
{
var results = policyContainer.EnforcePolicies(configuration.CreateContext());
return results.All(x => x.ViolationOccured == false);
{
"vars": {
"@gray-darker": "lighten(#000, 13.5%)",
"@gray-dark": "lighten(#000, 20%)",
"@gray": "lighten(#000, 33.5%)",
"@gray-light": "lighten(#000, 46.7%)",
"@gray-lighter": "lighten(#000, 93.5%)",
"@brand-primary": "#428bca",
"@brand-success": "#5cb85c",
"@brand-info": "#5bc0de",
@tiesont
tiesont / OpenSslAes.vb
Created January 21, 2015 18:12
VisualBasic.NET implementation of Scott Lowe's OpenSslAes class.
Imports System.Collections.Generic
Imports System.IO
Imports System.Security.Cryptography
Imports System.Text
Namespace Security
''' <summary>
''' OpenSSL AES CBC 256 in .NET for interop with Ruby
''' </summary>
using System;
using System.Collections;
using System.Linq;
using System.Xml.Linq;
/// <summary>Represent an Exception as XML data.</summary>
public class ExceptionXElement : XElement
{
/// <summary>Create an instance of ExceptionXElement.</summary>
/// <param name="exception">The Exception to serialize.</param>
class RandomDataSet
{
private int seed, compCount;
private List<int> idataset = new List<int>();
/// <summary>
/// Default constructor.
/// </summary>
public RandomDataSet()
: this( new List<int>(), 0, System.DateTime.Now.Millisecond )
@tiesont
tiesont / HashUtility.cs
Last active December 22, 2015 03:39
C# Hashing utility, as used in Monkey.CMS.
using System;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
namespace Utilities
{
/// <summary>
/// Simple utility class for generating hashes for string values.
/// </summary>
@tiesont
tiesont / CustomRoleProvider.cs
Created September 3, 2013 05:32
Template implementation of a custom ASP.NET RoleProvider, using C#
using System;
using System.Collections.Specialized;
using System.Configuration.Provider;
using System.Linq;
using System.Web.Configuration;
using System.Web.Security;
namespace Custom.Providers
{
public class CustomRoleProvider : RoleProvider
@tiesont
tiesont / CustomMembershipProvider.cs
Last active December 22, 2015 04:49
Template implementation of a custom ASP.NET MembershipProvider, using C#.
using System;
using System.Collections.Specialized;
using System.Configuration.Provider;
using System.Web.Configuration;
using System.Web.Security;
namespace Custom.Providers
{
public class CustomMembershipProvider : MembershipProvider
{
@tiesont
tiesont / gmailsender.cs
Last active January 2, 2016 08:59
Helper class used to access a Gmail account remotely for the purpose of sending an email message
/// <summary>
/// GmailSender: Class used to access a Gmail account remotely for the purpose of sending an email message
/// </summary>
public class GmailSender
{
/// <summary>
/// Static method. Accepts required elements for sending a email through the Google Mail system.
/// </summary>
/// <param name="to">The target (recipient) of the email message.</param>
/// <param name="subject">Subject line value for the email.</param>
using System;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.Mvc;
using Microsoft.Internal.Web.Utils;
using Microsoft.Web.Helpers.Resources;
namespace YourNamespaceHere