• Api Documentation
Show / Hide Table of Contents
  • Softadmin.Api
    • AdminMessageException
    • CustomComponent
    • ICookies
    • IEnvironment
    • IForwardState
    • IHttpHeaders
    • IParameters
    • ISessionVariables
    • ISystemSettings
    • Plugin
  • Softadmin.Api.Database
    • IDbRequest
    • IDbRequestFactory
  • Softadmin.Api.Diagnostics
    • ILogger
  • Softadmin.Api.Login
    • IUserState
    • LoginPlugin
    • PostLoginPlugin
    • PreLoginPlugin
    • UserAuthenticationPlugin
  • Softadmin.Api.Logout
    • LogoutPlugin
  • Softadmin.Api.Page
    • ICustomPage
    • PagePlugin
  • Softadmin.Api.Ui
    • IDebugWindow
    • IProgressWindow

Interface IHttpHeaders

Provides access to the HTTP headers passed with the page request.

Namespace: Softadmin.Api
Assembly: Softadmin.Api.dll
Syntax
public interface IHttpHeaders
Examples

Implements single sign-on where an external proxy passes an extra HTTP-header to the login page describing the identity of the user.

public class SsoHttpHeaderPlugin : PreLoginPlugin
{
	public override void BeforeLogin()
	{
		var ssoUserId = this.HttpHeaders["MyUserId"];
		if (!string.IsNullOrEmpty(ssoUserId))
		{
			this.UserState.UserId = this.ConvertUserId(ssoUserId);
		}
	}

	private int ConvertUserId(string ssoUserId)
	{
		using (var request = this.RequestFactory.CreateRequest("Convert external user id to local"))
		{
			request.SetParameter("SsoUserId", ssoUserId);
			var dataSet = request.GetDataSet();
			var table = dataSet.Tables[0];
			if (table.Rows.Count == 0)
			{
				throw new Exception($"Unknown external user id {ssoUserId}.");
			}

			return (int)table.Rows[0]["UserId"];
		}
	}
}

Properties

Item[String]

Gets the value of the given HTTP header.

Declaration
string this[string name] { get; }
Parameters
Type Name Description
System.String name

The name

Property Value
Type Description
System.String

The value, or null.

Back to top Generated by DocFX