При желании вы можете реализовать ключ приложения для мобильного приложения Azure.
Вы можете установить ключ приложения для мобильного приложения Azure, например для мобильных служб Azure.
1. Откройте параметры приложения в мобильном приложении Azure.
2. Прокрутите вниз до пункта Настройки приложения. Добавьте эти две строки.
| zumo-api-ключ | ВВЕДИТЕ КЛЮЧ API |
| MS_SkipVersionCheck | Правда |
3. Затем нажмите Сохранить.
4. Откройте Редактор службы приложений.
5. Создайте файл в своей основной папке wwwroot.
6. Назовите файл validateApiKey.js.
// ----------------------------------------------------------------------------
// Copyright (c) 2015 Microsoft Corporation. All rights reserved.
// ----------------------------------------------------------------------------
module.exports = function (req, res, next) {
// Validate zumo-api-key header against environment variable.
// The header could also be validated against config setting, etc
var apiKey = process.env['zumo-api-key'];
if (apiKey && req.get('zumo-api-key') != apiKey)
return res.status(401).send('This operation requires a valid api key');
else
return next();
}
6. Обновите свой скрипт API как
[примерAPI.js]
var validateApiKey = require('../validateApiKey');
module.exports = {
"get": [validateApiKey, function(request, response, next)
{
response.send(
{
message: "post"
});
}],
"post": [validateApiKey, function(request, response, next)
{
response.send(
{
message: "post"
});
}]
};
[образецAPI.json]
{
"get": {
"access": "anonymous"
},
"post": {
"access": "anonymous"
},
"put": {
"access": "anonymous"
},
"patch": {
"access": "anonymous"
},
"delete": {
"access": "anonymous"
}
}
Не забудьте сменить права на "Анонимно"
6. Обновите сценарий таблицы как
[sampleTable.js]
var azureMobileApps = require('azure-mobile-apps'),
validateApiKey = require('../validateApiKey');
// Create a new table definition
var table = azureMobileApps.table();
// Access should be anonymous so that unauthenticated users are not rejected
// before our custom validateApiKey middleware runs.
table.access = 'anonymous';
// validate api key header prior to execution of any table operation
table.use(validateApiKey, table.execute);
// to require api key authentication for only one operation (in this case insert)
// instead of table.use(validateApiKey, table.execute) use:
// table.insert.use(validateApiKey, table.operation);
module.exports = table;
[sampleTable.json]
{
"softDelete" : true,
"autoIncrement": false,
"insert": {
"access": "anonymous"
},
"update": {
"access": "anonymous"
},
"delete": {
"access": "anonymous"
},
"read": {
"access": "anonymous"
},
"undelete": {
"access": "anonymous"
}
}
Не забудьте сменить права на "Анонимно"
7. Готово!
Не забудьте добавить заголовок при вызове мобильного или веб-приложения Azure.
Кроме того, вы можете увидеть больше из этого репозитория на Github.
https://github.com/thisisfatih/applicationKeyAzure/
person
thisisfatih
schedule
12.10.2016