public static void Delete(string prefix) { HttpApi.CallHttpApi(() => { var configKey = new URLACL_SET(); configKey.KeyDesc.pUrlPrefix = prefix; HttpApi.ThrowWin32ExceptionIfError(HttpApi.HttpDeleteServiceConfiguration(IntPtr.Zero, HttpApi.HTTP_SERVICE_CONFIG_ID.HttpServiceConfigUrlAclInfo, configKey, Marshal.SizeOf(configKey), IntPtr.Zero)); }); }
public static UrlAcl Create(string prefix, string newSddl) { HttpApi.CallHttpApi(() => { var config = new URLACL_SET(); config.KeyDesc.pUrlPrefix = prefix; config.ParamDesc.pStringSecurityDescriptor = newSddl; HttpApi.ThrowWin32ExceptionIfError(HttpApi.HttpSetServiceConfiguration(IntPtr.Zero, HttpApi.HTTP_SERVICE_CONFIG_ID.HttpServiceConfigUrlAclInfo, config, Marshal.SizeOf(config), IntPtr.Zero)); }); return(new UrlAcl(prefix, newSddl)); }