Могу ли я использовать более строгий ключ с Jekyll Algolia? - PullRequest
0 голосов
/ 19 мая 2019

Я создаю свой сайт Jekyll с поиском по Алголии.

В документации о jekyll-algolia говорится, что ключ администратора должен быть указан в переменной среды ALGOLIA_API_KEY.

Однако еще одна страница о безопасности ключа API говорит

Ваш ключ администратора API - это ключ mo st sensit ive: он обеспечивает полный контроль над всеми вашими индексами и данными. Ключ API администратора всегда должен храниться в безопасности. D o НЕ раскрывать его кому-либо или d o NOT использовать его в любом приложении и всегда создавать новый ключ, который будет более ограничительным. Этот ключ API должен почти исключительно использоваться для создания других - более ограниченных - ключей API, которые затем будут использоваться для поиска и выполнения операций индексирования.

Читая вторую страницу, я пытаюсь создать более строгий ключ для использования с jekyll-algolia в сборках CI моего сайта Jekyll:

image

Однако я все еще получаю жалобы от bundle exec jekyll algolia:

ibug@ubuntu:~/iBug.github.io$ ALGOLIA_API_KEY="0123456789abcdef0123456789abcdef" bundle exec jekyll algolia
Configuration file: /home/wsl/iBug.github.io/_config.yml
Processing site...
         AutoPages: Disabled/Not configured in site.config.

        Pagination: Complete, processed 1 pagination page(s)
       Jekyll Feed: Generating feed for posts
   GitHub Metadata: No GitHub API authentication could be found. Some fields may be missing or have incorrect data.
Extracting records...
Updating records in index iBug_website...
Records to delete: 428
Records to add:    420
 [✗ Error] Invalid credentials

 The jekyll-algolia plugin could not connect to your application ID using the
 API key your provided.

 Make sure your API key has access to your 14DZKASAEJ application.

 You can find your API key in your Algolia dashboard here:
    https://www.algolia.com/licensing

ibug@ubuntu:~/iBug.github.io$ echo $?
1

Как мне это сделать? Или я должен предоставить ключ администратора в среде CI?

1 Ответ

1 голос
/ 19 мая 2019

Минимальные ACL для ключей API, необходимые для индексации с помощью jekyll-algolia: deleteIndex, addObject, deleteObject и 'editSettings`.

Если один из этих ACL не задан, вы получаете ошибкукак это:

[jekyll-algolia] Ошибка:
403: невозможно положить на https://APP_ID.algolia.net/1/indexes/your_folder/settings:
{"message": "Метод с этим ключом API запрещен", "status": 403} (403)

В вашем случае сообщение об ошибке указывает, что идентификатор вашего приложения не связан с указанным вами API_KEY.

Проверьте идентификатор приложения в своей Algoliaи убедитесь, что в вашем _config.yml есть правильная запись algolia.application_id.

Если вы предоставите правильный application_id и один из ее ключей API, он должен работать, в противном случае это проблема Algolia.

...