我们正在使用iOS应用中的Azure Easy表的同步功能。我们在系统中实现了自己的身份验证和授权。我已经为Easy API做了这个。我想在Easy Tables同步上扩展相同的逻辑。我不确定如何将此逻辑添加到简单的表数据更改中。
任何指针都会受到高度赞赏。
答案 0 :(得分:1)
从技术上讲,这就像Easy API一样简单。您的身份验证/授权机制必须生成具有已返回客户端的已知受众,颁发者和签名机密的JWT。您的客户端放置在client.currentUser.mobileServicesAuthenticationToken中接收的JWT(由于大小写规则,此属性的实际名称因客户端而异)。完成此操作后,客户端将在每次请求期间提交令牌。
在后端,您需要将服务器的身份验证设置设置为新的。在Easy Tables中,这涉及编辑主文件并调整创建zumo服务器的调用。在app.js
文件中查找如下所示的代码:
var mobile = azureMobileApps({
// Explicitly enable the Azure Mobile Apps home page
homePage: true
});
让它看起来像这样:
var mobile = azureMobileApps({
homePage: true,
auth: {
audience: "the-aud-field-from-your-JWT",
issuer: "the-iss-field-from-your-JWT",
secret: "the-secret-used-to-sign-the-JWT"
}
};
参考:http://azure.github.io/azure-mobile-apps-node/global.html#authConfiguration
秘密方面有一点问题。此值直接送入jsonwebtoken解码器,因此您可能需要根据jsonwebtoken instructions将您使用的密码转换为缓冲区。