public OpmVerificationResult VerifyOpmWithToken(string codeString, string token, out string username) { if (!IdentityManagement.ValidateUser(token)) { throw new UnauthorizedAccessException(); } username = IdentityManagement.GetUsername(token); return(VerifyOpm(codeString, username)); }
public void BasicImTest() { IdentityManagement im = new IdentityManagement("https://am-proxytest.bohemiaenergy.cz/opensso/identity/"); string token = im.Login("t5734", "Lcii9lvy"); const string badToken = "AAABB123123123DFSDFsdfsdf123123dsfsdf123SDFSDF4.*AAJTSQACMDE.*"; bool userValid = im.ValidateUser(badToken); Assert.IsFalse(userValid); IUser user = im.GetUserInfo(badToken); Assert.IsNull(user); userValid = im.ValidateUser(token); Assert.IsTrue(userValid); IUser user2 = im.GetUserInfo(token); Assert.NotNull(user2); Assert.AreEqual(user2.Id, "t5734"); }
public static void Register(HttpConfiguration config) { config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); // Uncomment the following line of code to enable query support for actions with an IQueryable or IQueryable<T> return type. // To avoid processing unexpected or malicious queries, use the validation settings on QueryableAttribute to validate incoming queries. // For more information, visit http://go.microsoft.com/fwlink/?LinkId=279712. //config.EnableQuerySupport(); // To disable tracing in your application, please comment out or remove the following line of code // For more information, refer to: http://www.asp.net/web-api config.EnableSystemDiagnosticsTracing(); #region IoC var container = new UnityContainer(); container.RegisterType<IOpmVerificator, OpmVerificator>(new HierarchicalLifetimeManager()); string idmUrl = System.Configuration.ConfigurationManager.AppSettings["IdmUrl"]; IIdentityManagement idm = new IdentityManagement(idmUrl); container.RegisterInstance(idm); string eanEicCheckerUrl = System.Configuration.ConfigurationManager.AppSettings["EanEicCheckerUrl"]; IEanEicCheckerHttpClient eanEicCheckerHttpClient = new EanEicCheckerHttpClient(eanEicCheckerUrl); container.RegisterInstance(eanEicCheckerHttpClient); IOpmRepository opmInMemoryRepository = new OpmInMemoryRepository(); OpmRepoFiller.Fill(opmInMemoryRepository); container.RegisterInstance(opmInMemoryRepository); config.DependencyResolver = new UnityResolver(container); #endregion IoC }