Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MultiObjectDelete API refactor -- extract auth params once #371

Closed
LaurenSpiegel opened this issue Nov 9, 2016 · 1 comment
Closed

MultiObjectDelete API refactor -- extract auth params once #371

LaurenSpiegel opened this issue Nov 9, 2016 · 1 comment
Labels

Comments

@LaurenSpiegel
Copy link
Contributor

Once the arsenal extractParams function is separated from doAuth, only extract params once in a multiObjectDelete call.

Related to scality/Arsenal#102

@ghost
Copy link

ghost commented Nov 9, 2016

The extractParams function is already separated from doAuth. In my "refactor effort", I've only left doAuth as-is because I kept playing catch-up with the changes made for Vault and S3 features; and chose this way to reduce the quantity of diff I had to re-apply every time.

All the logic present in doAuth should be logic owned by the "user" of Arsenal, the point being:

  • "Client side of auth" uses extractParams
  • "Client" sends params to "Server"
  • "Server side of auth" uses checkSignature (and can guess V2 or V4 from the params)

Currently, the only logic provided by Arsenal in this case is setting a few params in the RequestContexts, and that should be managed by S3 in the model I envisionned. Of course, Arsenal's doAuth is currently calling its internal vault.checkSignatureV? but the vault.js logic should disappear from Arsenal, as it's a specific of S3.

Essentially, what you describe is what I called the "Step2" of the auth refactor, that I never had time to get to. but it should be fairly straight-forward now that the first step is done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants