Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • O openapi-generator
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,476
    • Issues 3,476
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 402
    • Merge requests 402
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • OpenAPI Tools
  • openapi-generator
  • Merge requests
  • !2459

[rust-server] Added API Key auth to rust-server

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Administrator requested to merge github/fork/joylabs/api_key_auth into master Mar 20, 2019
  • Overview 0
  • Commits 1
  • Pipelines 0
  • Changes 4

Created by: Herrera93

PR checklist

  • Read the contribution guidelines.
  • Ran the shell script under ./bin/ to update Petstore sample so that CIs can verify the change. (For instance, only need to run ./bin/{LANG}-petstore.sh, ./bin/openapi3/{LANG}-petstore.sh if updating the {LANG} (e.g. php, ruby, python, etc) code generator or {LANG} client's mustache templates). Windows batch files can be found in .\bin\windows\.
  • Filed the PR against the correct branch: master, 3.4.x, 4.0.x. Default: master.
  • Copied the technical committee to review the pull request if your PR is targeting a particular programming language. @frol @farcaller @bjgill

Description of the PR

Added API Key authentication in rust-server for both in header and query. Still missing in cookie.

For query, since we're not available to modify hyper request after creating it, I added it to the uri created. To do this I had to move let query_string = ... outside of the queryParams block which means it'll be present even if there aren't any queryParams or query API Key. I think we can change this by creating an additional property to check for both conditions.

For header it was easier since we can use header_mut on request to add any new headers to it. I only added the variable x-keyVarName to vendor extensions in order to camel case the header.

One other downside to this is that we may need to refactor it in case of multiple API Keys in headers.

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: github/fork/joylabs/api_key_auth