API SAML invalidate
Отправляет сообщение SAML LogoutRequest в Elasticsearch для обработки.
Этот API предназначен для использования сторонними веб-приложениями, отличными от Kibana. Если вы используете Kibana, обратитесь к Настройка SAML единого входа в Elastic Stack.
Запрос
POST /_security/saml/invalidate
Описание
Запрос на выход происходит от SAML IdP во время инициированного IdP единого выхода. Веб-приложение может использовать этот API, чтобы Elasticsearch обработало LogoutRequest. После успешной валидации запроса Elasticsearch аннулирует маркер доступа и обновление, соответствующие данному SAML принципалу, и предоставляет URL, содержащий сообщение SAML LogoutResponse, чтобы пользователь мог вернуться к IdP.
Elasticsearch предоставляет всю необходимую функциональность SAML через SAML API. Эти API используются в Kibana для обеспечения аутентификации на основе SAML, но также могут использоваться другими сторонними веб-приложениями или другими клиентами. Также см. API SAML authenticate, API SAML prepare authentication, API SAML logout и API SAML complete logout.
Тело запроса
-
acs - (Необязательно, строка) URL Assertion Consumer Service, совпадающий с URL SAML домена в Elasticsearch, который должен быть использован. Вы должны указать этот параметр или параметр
realm. -
query_string - (Обязательно, строка) Часть запроса URL, на который пользователь был перенаправлен SAML IdP для начала единого выхода. Этот запрос должен включать единственный параметр с именем
SAMLRequest, содержащий запрос на выход SAML, сжатый и закодированный в Base64. Если SAML IdP подписал запрос на выход, URL должен содержать два дополнительных параметра с именемSigAlgиSignature, содержащие используемый алгоритм подписи и само значение подписи. Для того, чтобы Elasticsearch смог проверить подпись IdP, значение поля query_string должно точно совпадать со строкой, предоставленной браузером. Приложению-клиенту не следует пытаться анализировать или обрабатывать строку каким-либо образом. -
queryString - [7.14.0] Устарело в версии 7.14.0. Используйте вместо этого query_string См.
query_string. -
realm - (Необязательно, строка) Имя SAML домена в Elasticsearch. Вы должны указать этот параметр или параметр
acs.
Тело ответа
-
invalidated - (целое число) Количество токенов, аннулированных в рамках этого выхода.
-
realm - (строка) Имя домена SAML в Elasticsearch, который выполнил аутентификацию пользователя.
-
redirect - (строка) Ответ SAML LogoutResponse в виде параметра для перенаправления пользователя обратно в SAML IdP.
Примеры
В следующем примере аннулируются все токены для домена saml1, относящиеся к пользователю, идентифицированному в запросе SAML на выход:
resp = client.security.saml_invalidate(
query_string="SAMLRequest=nZFda4MwFIb%2FiuS%2BmviRpqFaClKQdbvo2g12M2KMraCJ9cRR9utnW4Wyi13sMie873MeznJ1aWrnS3VQGR0j4mLkKC1NUeljjA77zYyhVbIE0dR%2By7fmaHq7U%2BdegXWGpAZ%2B%2F4pR32luBFTAtWgUcCv56%2Fp5y30X87Yz1khTIycdgpUW9kY7WdsC9zxoXTvMvWuVV98YyMnSGH2SYE5pwALBIr9QKiwDGpW0oGVUznGeMyJZKFkQ4jBf5HnhUymjIhzCAL3KNFihbYx8TBYzzGaY7EnIyZwHzCWMfiDnbRIftkSjJr%2BFu0e9v%2B0EgOquRiiZjKpiVFp6j50T4WXoyNJ%2FEWC9fdqc1t%2F1%2B2F3aUpjzhPiXpqMz1%2FHSn4A&SigAlg=http%3A%2F%2Fwww.w3.org%2F2001%2F04%2Fxmldsig-more%23rsa-sha256&Signature=MsAYz2NFdovMG2mXf6TSpu5vlQQyEJAg%2B4KCwBqJTmrb3yGXKUtIgvjqf88eCAK32v3eN8vupjPC8LglYmke1ZnjK0%2FKxzkvSjTVA7mMQe2AQdKbkyC038zzRq%2FYHcjFDE%2Bz0qISwSHZY2NyLePmwU7SexEXnIz37jKC6NMEhus%3D",
realm="saml1",
)
print(resp) const response = await client.security.samlInvalidate({
query_string:
"SAMLRequest=nZFda4MwFIb%2FiuS%2BmviRpqFaClKQdbvo2g12M2KMraCJ9cRR9utnW4Wyi13sMie873MeznJ1aWrnS3VQGR0j4mLkKC1NUeljjA77zYyhVbIE0dR%2By7fmaHq7U%2BdegXWGpAZ%2B%2F4pR32luBFTAtWgUcCv56%2Fp5y30X87Yz1khTIycdgpUW9kY7WdsC9zxoXTvMvWuVV98YyMnSGH2SYE5pwALBIr9QKiwDGpW0oGVUznGeMyJZKFkQ4jBf5HnhUymjIhzCAL3KNFihbYx8TBYzzGaY7EnIyZwHzCWMfiDnbRIftkSjJr%2BFu0e9v%2B0EgOquRiiZjKpiVFp6j50T4WXoyNJ%2FEWC9fdqc1t%2F1%2B2F3aUpjzhPiXpqMz1%2FHSn4A&SigAlg=http%3A%2F%2Fwww.w3.org%2F2001%2F04%2Fxmldsig-more%23rsa-sha256&Signature=MsAYz2NFdovMG2mXf6TSpu5vlQQyEJAg%2B4KCwBqJTmrb3yGXKUtIgvjqf88eCAK32v3eN8vupjPC8LglYmke1ZnjK0%2FKxzkvSjTVA7mMQe2AQdKbkyC038zzRq%2FYHcjFDE%2Bz0qISwSHZY2NyLePmwU7SexEXnIz37jKC6NMEhus%3D",
realm: "saml1",
});
console.log(response); POST /_security/saml/invalidate
{
"query_string" : "SAMLRequest=nZFda4MwFIb%2FiuS%2BmviRpqFaClKQdbvo2g12M2KMraCJ9cRR9utnW4Wyi13sMie873MeznJ1aWrnS3VQGR0j4mLkKC1NUeljjA77zYyhVbIE0dR%2By7fmaHq7U%2BdegXWGpAZ%2B%2F4pR32luBFTAtWgUcCv56%2Fp5y30X87Yz1khTIycdgpUW9kY7WdsC9zxoXTvMvWuVV98YyMnSGH2SYE5pwALBIr9QKiwDGpW0oGVUznGeMyJZKFkQ4jBf5HnhUymjIhzCAL3KNFihbYx8TBYzzGaY7EnIyZwHzCWMfiDnbRIftkSjJr%2BFu0e9v%2B0EgOquRiiZjKpiVFp6j50T4WXoyNJ%2FEWC9fdqc1t%2F1%2B2F3aUpjzhPiXpqMz1%2FHSn4A&SigAlg=http%3A%2F%2Fwww.w3.org%2F2001%2F04%2Fxmldsig-more%23rsa-sha256&Signature=MsAYz2NFdovMG2mXf6TSpu5vlQQyEJAg%2B4KCwBqJTmrb3yGXKUtIgvjqf88eCAK32v3eN8vupjPC8LglYmke1ZnjK0%2FKxzkvSjTVA7mMQe2AQdKbkyC038zzRq%2FYHcjFDE%2Bz0qISwSHZY2NyLePmwU7SexEXnIz37jKC6NMEhus%3D",
"realm" : "saml1"
} {
"redirect" : "https://my-idp.org/logout/SAMLResponse=....",
"invalidated" : 2,
"realm" : "saml1"
}
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/security-api-saml-invalidate.html