在 Authorize.Net iOS SDK 中将 API 登录 ID 和事务密钥放在哪里?
Posted
技术标签:
【中文标题】在 Authorize.Net iOS SDK 中将 API 登录 ID 和事务密钥放在哪里?【英文标题】:Where to put API Login ID and Transaction Key in Authorize.Net iOS SDK? 【发布时间】:2014-09-17 04:56:53 【问题描述】:Authorize.Net 提供支付集成。
我的问题:在 Authorize.Net iOS SDK 中将 API 登录 ID 和交易密钥放在哪里?
我已经包含了注册和登录请求代码。
使用测试用户名和密码的测试帐户可以正常工作。
以下是设备注册代码。
MobileDeviceRegistrationRequest *mobileDeviceRegistrationRequest = [MobileDeviceRegistrationRequest mobileDeviceRegistrationRequest];
mobileDeviceRegistrationRequest.mobileDevice.mobileDeviceId = [[[[UIDevice currentDevice] identifierForVendor]UUIDString]stringByReplacingOccurrencesOfString:@"-" withString:@"_"];
mobileDeviceRegistrationRequest.anetApiRequest.merchantAuthentication.name = @"------";
mobileDeviceRegistrationRequest.anetApiRequest.merchantAuthentication.password = @"------";
mobileDeviceRegistrationRequest.anetApiRequest.merchantAuthentication.transactionKey=@"------";
AuthNet *anReg = [AuthNet getInstance];
[anReg setDelegate:self];
[anReg mobileDeviceRegistrationRequest:mobileDeviceRegistrationRequest];
我认为商家不会将用户名和密码提供给开发者。
那么 API Login ID 和 Transaction Key 应该放在哪里呢?
谢谢
【问题讨论】:
【参考方案1】:API 登录和交易密钥等敏感信息不应存储在移动设备上。
相反,在使用移动 SDK 时,您应该使用登录 ID 和密码。这为帐户所有者提供了更多控制权,因为他们可以创建具有特定角色的用户来控制用户可以做什么或不可以做什么。帐户所有者或管理员必须批准新设备注册,并且可以从商家界面中远程禁用它们。
使用sandbox 创建您自己的网关帐户,您可以在其中全面测试您的集成,而无需将实际交易提交到卡网络。
【讨论】:
商家可以进入账户 > 用户管理并创建一个特定用户供您使用他们的实时生产网关进行测试。他们将控制哪些设备被批准/未批准,并且可以在完成后远程禁用或删除用户帐户。 正确,帐户所有者或管理员必须批准每个新设备。在用于测试的沙箱中也是如此。 ios SDK 使您能够构建移动销售点设备,因此它们可能不需要经常更改。以上是关于在 Authorize.Net iOS SDK 中将 API 登录 ID 和事务密钥放在哪里?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 authorize.net sdk for android 中传递 api 登录密钥和事务 ID?
E00114 在 Authorize.net 中使用接受 JS 创建带有付款随机数的订阅时,OTS 令牌无效
Authorize.Net 交易详情 API 不返回 LineItems
为啥我的 Authorize.Net 测试帐户使用他们提供的示例应用程序失败?
Authorize.Net Paypal Express PHP API:交易未在 Authorize.Net 中更新,也未捕获正确金额的问题