ShaoZeMing commented on a change in pull request #3554: URL: https://github.com/apache/apisix/pull/3554#discussion_r571943446
########## File path: doc/plugins/auth-hook.md ########## @@ -0,0 +1,182 @@ +<!-- +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +--> + +-[English](../../plugins/auth-hook.md) + +# table of Contents + +-[**Name**](#first name) -[**Attribute**](#Attribute) -[**Dependencies**](#Dependencies) -[**How to enable**](#How to enable) -[**Test plugin**](#Test plugin) -[**Disable plugins**](#Disable plugins) + +## first name + +`auth-hook` is an authentication and authorization plug-in, add `auth-hook` to a `service` or `route`. +The auth-hook function is provided by its own auth-server, and it is sufficient to provide an authorization authentication interface according to the corresponding data structure. + +## Attributes + +| Name | Type | Required | Default Value | Valid Value | Description | +| ------------------------- | ------------- | -------- | ------------- | ----------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| auth_hook_uri | string | Required | | | Set the access route of `auth-server` | +| auth_hook_id | string | Optional | "unset" | | Set `auth_hook_id`, the `auth_hook_id` will be carried in the header `Auth-Hook-Id` to request a custom auth-server service | +| auth_hook_method | string | Optional | "GET" | | Set the access method of `auth-server`, the default is `GET`, only `POST`, `GET` are allowed | +| hook_headers | array[string] | Optional | | | Specify the header parameters of the business request. Proxy request hook service, which will carry `Authorization` by default | +| hook_args | array[string] | Optional | | | Specify request query parameters, proxy requests hook service with query parameters | +| hook_res_to_headers | array[string] | Optional | | | Specify the fields in the data body of the data returned by the hook service, add the headers parameter and pass it to the upstream service, such as `user_id=15` in the data data, splicing `hook_res_to_header_prefix` and Replace the next `_` with `-` into the header, request upstream services with `X-user-id`, if the selected field is an object or array, it will be converted to a json string as its value | +| hook_res_to_header_prefix | string | Optional | | | User `hook_res_to_headers` carries parameters and converts to header field prefix | Review comment: OK ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected]
