예제 #1
0
        public static bool IsSamlClaimsBasedEnvironment(SPWeb web)
        {
            // Delcare locals
            bool          IsSamlClaimsBased = false;
            SPIisSettings iis = web.Site.WebApplication.IisSettings[SPUrlZone.Default];

            foreach (SPAuthenticationProvider ap in iis.ClaimsAuthenticationProviders)
            {
                SPTrustedAuthenticationProvider tap = ap as SPTrustedAuthenticationProvider;
                if (tap != null)
                {
                    IsSamlClaimsBased = true;
                    break;
                }
            }

            return(IsSamlClaimsBased);
        }
예제 #2
0
        /// <summary>
        /// Gets the SAML user name prefix.
        /// </summary>
        /// <param name="currentWeb">The current web.</param>
        /// <returns>User Name Prefix</returns>
        private string GetSamlUserNamePrefix(SPWeb currentWeb)
        {
            // Delcare local
            string        originalIssuer = string.Empty;
            SPIisSettings iis            = currentWeb.Site.WebApplication.IisSettings[SPUrlZone.Default];

            string userNamePrefix = string.Empty;

            foreach (SPAuthenticationProvider ap in iis.ClaimsAuthenticationProviders)
            {
                SPTrustedAuthenticationProvider tap = ap as SPTrustedAuthenticationProvider;
                if (tap != null)
                {
                    userNamePrefix = string.Format("i:0e.t|{0}|", tap.LoginProviderName);
                    break;
                }
            }

            // Return value
            return(userNamePrefix);
        }