Slack URL verification fails
Closed this issue · 1 comments
koalafi-hilarym commented
What went wrong?
What happened:
- When trying to vaildate the slack URL
settings.event_subscriptions.request_url
, the validation fails
Error from logs:
2024-04-20 18:29:16 source=engine:app google_trace_id=none logger=apps.social_auth.middlewares SocialAuthAuthCanceledExceptionMiddleware.process_exception: descriptor 'encode' for 'str' objects doesn't apply to a 'NoneType' object
2024-04-20 18:29:16 source=engine:app google_trace_id=none logger=django.request Internal Server Error: /slack/event_api_endpoint/
Traceback (most recent call last):
File "/usr/local/lib/python3.11/site-packages/django/core/handlers/exception.py", line 55, in inner
response = get_response(request)
^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/django/core/handlers/base.py", line 197, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/django/views/decorators/csrf.py", line 56, in wrapper_view
return view_func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/django/views/generic/base.py", line 104, in view
return self.dispatch(request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/rest_framework/views.py", line 509, in dispatch
response = self.handle_exception(exc)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/rest_framework/views.py", line 469, in handle_exception
self.raise_uncaught_exception(exc)
File "/usr/local/lib/python3.11/site-packages/rest_framework/views.py", line 480, in raise_uncaught_exception
raise exc
File "/usr/local/lib/python3.11/site-packages/rest_framework/views.py", line 506, in dispatch
response = handler(request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/etc/app/apps/slack/views.py", line 111, in post
SlackEventApiEndpointView.verify_signature(
File "/etc/app/apps/slack/views.py", line 89, in verify_signature
request_hash = "v0=" + hmac.new(str.encode(secret), req, hashlib.sha256).hexdigest()
^^^^^^^^^^^^^^^^^^
TypeError: descriptor 'encode' for 'str' objects doesn't apply to a 'NoneType' object
2024-04-20 18:29:16 source=engine:app google_trace_id=none logger=root inbound latency=0.051651 status=500 method=POST path=/slack/event_api_endpoint/ user_agent=Slackbot 1.0 (+https://api.slack.com/robots) content-length=453 slow=0
2024-04-20 18:29:16 source=engine:uwsgi status=500 method=POST path=/slack/event_api_endpoint/ latency=0.052791 google_trace_id=- protocol=HTTP/1.1 resp_size=428 req_body_size=453
2024-04-20 18:29:16 source=engine:app google_trace_id=none logger=apps.slack.views Request id: f065204f-1ff5-4b62-9f52-7aa94cb15d98
2024-04-20 18:29:16 source=engine:app google_trace_id=none logger=apps.social_auth.middlewares SocialAuthAuthCanceledExceptionMiddleware.process_exception: descriptor 'encode' for 'str' objects doesn't apply to a 'NoneType' object
2024-04-20 18:29:16 source=engine:app google_trace_id=none logger=django.request Internal Server Error: /slack/event_api_endpoint/
Traceback (most recent call last):
File "/usr/local/lib/python3.11/site-packages/django/core/handlers/exception.py", line 55, in inner
response = get_response(request)
^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/django/core/handlers/base.py", line 197, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/django/views/decorators/csrf.py", line 56, in wrapper_view
return view_func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/django/views/generic/base.py", line 104, in view
return self.dispatch(request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/rest_framework/views.py", line 509, in dispatch
response = self.handle_exception(exc)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/rest_framework/views.py", line 469, in handle_exception
self.raise_uncaught_exception(exc)
File "/usr/local/lib/python3.11/site-packages/rest_framework/views.py", line 480, in raise_uncaught_exception
raise exc
File "/usr/local/lib/python3.11/site-packages/rest_framework/views.py", line 506, in dispatch
response = handler(request, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/etc/app/apps/slack/views.py", line 111, in post
SlackEventApiEndpointView.verify_signature(
File "/etc/app/apps/slack/views.py", line 89, in verify_signature
request_hash = "v0=" + hmac.new(str.encode(secret), req, hashlib.sha256).hexdigest()
^^^^^^^^^^^^^^^^^^
TypeError: descriptor 'encode' for 'str' objects doesn't apply to a 'NoneType' object
2024-04-20 18:29:16 source=engine:app google_trace_id=none logger=root inbound latency=0.055494 status=500 method=POST path=/slack/event_api_endpoint/ user_agent=Slackbot 1.0 (+https://api.slack.com/robots) content-length=453 slow=0
What did you expect to happen:
- Validation successful
How do we reproduce it?
- Create a new app in slack
- Try to validate the event subscriptions request URL
Grafana OnCall Version
v1.4.3
Product Area
Chatops
Grafana OnCall Platform?
Kubernetes
User's Browser?
No response
Anything else to add?
No response
koalafi-hilarym commented
Closing this. I had to click the "Reset to defaults" in Env Variables