uCommerce Secure Ticket交易与记录

时间:2013-05-30 11:47:00

标签: security file-io transactions umbraco umbraco-ucommerce

我正在网上商店工作,应该可以按月支付20美元的费用来订购服务。

我在c#usercontrol中创建了一个脚本,该脚本将由umbraco预定任务命令每月调用:

<task log="true" alias="test60" interval="60" url="http://mysite/umbraco/subscriptionPayment.aspx"/>

为此,我有两个问题。

1)我应该在哪里放置usercontrol以使公众无法访问它,但umbraco任务命令可以访问它?非常重要的是,脚本只能由本地服务器命令访问。

2)我希望每次进行事务时脚本都会记录一个文件。我正在使用以下脚本:

File.AppendAllText("paymentlog.txt",
                   "Transaction "+transactionNumber.ToString() +" sucessfully executed at "+DateTime.Now.ToString() + Environment.NewLine);

我只是不知道应该给paylog.txt文件指定哪条路径,因为处理umbraco中的真实路径对我来说似乎有点模糊。我希望将paymentlog.txt文件放在root umbraco文件夹中。我该怎么做?

提前致谢(我正在运行umbraco 4.8和uCommerce 2.6.1)。

祝你好运, Brinck10

2 个答案:

答案 0 :(得分:0)

umbraco中的任务调度程序不是非常可靠,这听起来对您的业务至关重要,所以我可能会尝试使用服务器上Windows中的调度程序构建来进行处理。

话虽如此。关于标记任务调度程序方法更安全,您可以使您调用的URL只能在localhost / 127.0.0.1上访问,并在任务配置中使用localhost地址。

答案 1 :(得分:0)

您可以调用用户服务来验证调用者是否已登录。以下代码将实现:

using UCommerce.Infrastructure;
using UCommerce.Security;

var authService = ObjectFactory.Instance.Resolve<IAuthenticationService>();
if (authService.IsAuthenticated())
{
  // do secure code here
}