Рекомендации по ведению журнала OAuth + REST API? Как должна выглядеть таблица статистики регистрации доступа OAuth? - PullRequest
2 голосов
/ 14 февраля 2012

Каковы лучшие практики для регистрации OAuth REST API? Я хотел бы свести к минимуму базу данных, поскольку журналы http могут хранить много. Однако я также хочу отслеживать использование и мгновенно обнаруживать злоупотребления.

Существует ли пользовательский LogFormat для Apache, который можно настроить для хранения большей части данных?

Если бы я должен был создать таблицу, в которой регистрировалось использование REST API, использующего механизм безопасности OAuth, как должна выглядеть эта таблица? Я новичок в OAuth и хочу убедиться, что я ничего не пропускаю.

Вот что у меня есть ...

"access_log"
access_method VARCHAR(8) -- PUT/GET/POST/DELETE/etc..
request_uri VARCHAR(1024)
token_id int references token.id
user_id int references user.id

В качестве общей отправной точки предположим, что таблицы выглядят так, как указано в этом примере OAuth-провайдера .

"user"
id  int , auto_increment
login   varchar(50)

"consumer"
id  int , auto_increment
consumer_key    varchar(250)
consumer_secret varchar(250)
active  tinyint(1)

"consumer_nonce"
id  int , auto_increment
consumer_id int references consumer.id
timestamp   bigint
nonce   varchar(250)

"token"
id  int , auto_increment
user_id int references user.id
type    int references token_type.id
consumer_id int references consumer.id
token   varchar(250)
token_secret    varchar(250)
callback_url    varchar(250)
verifier    varchar(250)

"token_type" // 1 = Request, 2 = Access
id  int , auto_increment
type    varchar(50)
...