☰Read-only archive⌕
Looking for help with Bokeh?

This is a read-only archive. Ask questions and join the conversation on GitHub.

Visit Community Support on GitHub →
Archived discussions · Captured October 28, 2026

Is It possible to add a google Authentication layer to Bokeh?

Community Support
Bryan
Bryan

Hi Jordan,

Support for built-in Bokeh server auth was removed because for the most part, people trying to make "real world" deployments want to integrate directly with their existing AAA services, and not use anything canned or built-in to Bokeh. And people just using it locally want it to "just work". There is simply no way we can support all the different systems people might want to work with (and we must acknowledge as well that we are not experts in this area), so the decision was taken to delegate to other facilities. So as of 0.11.1 to add Google auth in front of a Bokeh server app, you would need to run behind Nginx, or Apache, or something else that can do the authentication. There are other benefits to this configuration as well, namely scale-out behind a load balancer is possible.

That said, with recent capabilities for user-extensible models, as well as upcoming support for custom Jinja templates and static resources, I think it would be easy to demonstrate a single page app that performs auth of whatever sort around embedded bokeh plots and widgets. It might also be more appropriate now to imagine a path for optional server extensions for things like auth. Proposals (or PRs) for that sort of optional and clearly separated feature could certainly be entertained.

Thanks,

Bryan

···

On Apr 18, 2016, at 4:32 PM, Jordan Bramble <jordanbramble@gmail.com> wrote:

I believe R-Shiny has this option. I also believe older versions of Bokeh had authentication, and now it appears this is no more.

--
You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.
To post to this group, send email to bokeh@continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/7bdf9116-f08f-4ef5-9391-d582a7332146%40continuum.io\.
For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

⌁   Link to post
Jordan_Bramble
Jordan_Bramble

Big thanks for the reply. I believe I am in a minority group where I have built a large scale single page app in Bokeh, and now I am trying to add a few new features, such as data export to .csv, Authentication, etc, and I am trying to avoid rewriting the app in Flask and incorporating bokeh that way. Overall I find the process of creating single page dashboard apps with Bokeh to be incredibly fun and easy, minus these few missing features.

However, I do think an “export to excel” Tool for DataTable would be quite useful, is this worth opening a github Issues/Feature Request for?

···

On Mon, Apr 18, 2016 at 5:49 PM, Bryan Van de Ven bryan@bokeh.org wrote:

Hi Jordan,

Support for built-in Bokeh server auth was removed because for the most part, people trying to make “real world” deployments want to integrate directly with their existing AAA services, and not use anything canned or built-in to Bokeh. And people just using it locally want it to “just work”. There is simply no way we can support all the different systems people might want to work with (and we must acknowledge as well that we are not experts in this area), so the decision was taken to delegate to other facilities. So as of 0.11.1 to add Google auth in front of a Bokeh server app, you would need to run behind Nginx, or Apache, or something else that can do the authentication. There are other benefits to this configuration as well, namely scale-out behind a load balancer is possible.

That said, with recent capabilities for user-extensible models, as well as upcoming support for custom Jinja templates and static resources, I think it would be easy to demonstrate a single page app that performs auth of whatever sort around embedded bokeh plots and widgets. It might also be more appropriate now to imagine a path for optional server extensions for things like auth. Proposals (or PRs) for that sort of optional and clearly separated feature could certainly be entertained.

Thanks,

Bryan

On Apr 18, 2016, at 4:32 PM, Jordan Bramble jordanbramble@gmail.com wrote:

I believe R-Shiny has this option. I also believe older versions of Bokeh had authentication, and now it appears this is no more.

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.

To post to this group, send email to bokeh@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/7bdf9116-f08f-4ef5-9391-d582a7332146%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.

To post to this group, send email to bokeh@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/92110EB8-6694-46EF-9C26-FA336A3EA658%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.

⌁   Link to post
Bryan
Bryan

Jordan,

I am actually *really* excited about the custom templates and static asset serving that will enable easy single page apps from a Bokeh server. There are definitely times when a more sophisticated embedding in Flask, Django, etc. is the way to go but I think making SPAs with custom templates and styling trivial to create will be a huge feature that many users will find useful!

Saving data to .csv is definitely something app code could do, if there are users/auth to contend with that obviously complicates matters a little bit. Please let us know if we can help make an example like that, it would be good to demonstrate for other users.

Thanks,

Bryan

···

On Apr 18, 2016, at 5:08 PM, Jordan Bramble <jordanbramble@gmail.com> wrote:

Big thanks for the reply. I believe I am in a minority group where I have built a large scale single page app in Bokeh, and now I am trying to add a few new features, such as data export to .csv, Authentication, etc, and I am trying to avoid rewriting the app in Flask and incorporating bokeh that way. Overall I find the process of creating single page dashboard apps with Bokeh to be incredibly fun and easy, minus these few missing features.

However, I do think an "export to excel" Tool for DataTable would be quite useful, is this worth opening a github Issues/Feature Request for?

On Mon, Apr 18, 2016 at 5:49 PM, Bryan Van de Ven <bryan@bokeh.org> wrote:
Hi Jordan,

Support for built-in Bokeh server auth was removed because for the most part, people trying to make "real world" deployments want to integrate directly with their existing AAA services, and not use anything canned or built-in to Bokeh. And people just using it locally want it to "just work". There is simply no way we can support all the different systems people might want to work with (and we must acknowledge as well that we are not experts in this area), so the decision was taken to delegate to other facilities. So as of 0.11.1 to add Google auth in front of a Bokeh server app, you would need to run behind Nginx, or Apache, or something else that can do the authentication. There are other benefits to this configuration as well, namely scale-out behind a load balancer is possible.

That said, with recent capabilities for user-extensible models, as well as upcoming support for custom Jinja templates and static resources, I think it would be easy to demonstrate a single page app that performs auth of whatever sort around embedded bokeh plots and widgets. It might also be more appropriate now to imagine a path for optional server extensions for things like auth. Proposals (or PRs) for that sort of optional and clearly separated feature could certainly be entertained.

Thanks,

Bryan

> On Apr 18, 2016, at 4:32 PM, Jordan Bramble <jordanbramble@gmail.com> wrote:
>
> I believe R-Shiny has this option. I also believe older versions of Bokeh had authentication, and now it appears this is no more.
>
> --
> You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.
> To post to this group, send email to bokeh@continuum.io.
> To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/7bdf9116-f08f-4ef5-9391-d582a7332146%40continuum.io\.
> For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

--
You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.
To post to this group, send email to bokeh@continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/92110EB8-6694-46EF-9C26-FA336A3EA658%40continuum.io\.
For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

--
You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.
To post to this group, send email to bokeh@continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/CAB%3DGhauypi7QPYvh7o7Bhd3zR7fAwn1x8T3WRuwCbZjkWB5C6Q%40mail.gmail.com\.
For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

⌁   Link to post
Jordan_Bramble
Jordan_Bramble

Bryan,
I would like to hear more about saving to .csv. I currently cant figure out a way to get that to work. Since there is no export tool. Ive created a button, with a callback associated to on_click. I think the primary issue is writing the callback. an example would be insanely helpful.

···

On Mon, Apr 18, 2016 at 10:26 PM, Bryan Van de Ven bryanv@continuum.io wrote:

Jordan,

I am actually really excited about the custom templates and static asset serving that will enable easy single page apps from a Bokeh server. There are definitely times when a more sophisticated embedding in Flask, Django, etc. is the way to go but I think making SPAs with custom templates and styling trivial to create will be a huge feature that many users will find useful!

Saving data to .csv is definitely something app code could do, if there are users/auth to contend with that obviously complicates matters a little bit. Please let us know if we can help make an example like that, it would be good to demonstrate for other users.

Thanks,

Bryan

On Apr 18, 2016, at 5:08 PM, Jordan Bramble jordanbramble@gmail.com wrote:

Big thanks for the reply. I believe I am in a minority group where I have built a large scale single page app in Bokeh, and now I am trying to add a few new features, such as data export to .csv, Authentication, etc, and I am trying to avoid rewriting the app in Flask and incorporating bokeh that way. Overall I find the process of creating single page dashboard apps with Bokeh to be incredibly fun and easy, minus these few missing features.

However, I do think an “export to excel” Tool for DataTable would be quite useful, is this worth opening a github Issues/Feature Request for?

On Mon, Apr 18, 2016 at 5:49 PM, Bryan Van de Ven bryan@bokeh.org wrote:

Hi Jordan,

Support for built-in Bokeh server auth was removed because for the most part, people trying to make “real world” deployments want to integrate directly with their existing AAA services, and not use anything canned or built-in to Bokeh. And people just using it locally want it to “just work”. There is simply no way we can support all the different systems people might want to work with (and we must acknowledge as well that we are not experts in this area), so the decision was taken to delegate to other facilities. So as of 0.11.1 to add Google auth in front of a Bokeh server app, you would need to run behind Nginx, or Apache, or something else that can do the authentication. There are other benefits to this configuration as well, namely scale-out behind a load balancer is possible.

That said, with recent capabilities for user-extensible models, as well as upcoming support for custom Jinja templates and static resources, I think it would be easy to demonstrate a single page app that performs auth of whatever sort around embedded bokeh plots and widgets. It might also be more appropriate now to imagine a path for optional server extensions for things like auth. Proposals (or PRs) for that sort of optional and clearly separated feature could certainly be entertained.

Thanks,

Bryan

On Apr 18, 2016, at 4:32 PM, Jordan Bramble jordanbramble@gmail.com wrote:

I believe R-Shiny has this option. I also believe older versions of Bokeh had authentication, and now it appears this is no more.

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.

To post to this group, send email to bokeh@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/7bdf9116-f08f-4ef5-9391-d582a7332146%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.

To post to this group, send email to bokeh@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/92110EB8-6694-46EF-9C26-FA336A3EA658%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.

To post to this group, send email to bokeh@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/CAB%3DGhauypi7QPYvh7o7Bhd3zR7fAwn1x8T3WRuwCbZjkWB5C6Q%40mail.gmail.com.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.

To post to this group, send email to bokeh@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/29F153AE-FABA-40D4-BA87-E1C6EE282AA9%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.

⌁   Link to post
JTampel
JTampel

Will this entail a python bokeh templating DSL or will one be required to learn/use jinja?

···

On Monday, April 18, 2016 at 10:26:47 PM UTC-4, Bryan Van de ven wrote:

Jordan,

I am actually really excited about the custom templates and static asset serving that will enable easy single page apps from a Bokeh server. There are definitely times when a more sophisticated embedding in Flask, Django, etc. is the way to go but I think making SPAs with custom templates and styling trivial to create will be a huge feature that many users will find useful!

Saving data to .csv is definitely something app code could do, if there are users/auth to contend with that obviously complicates matters a little bit. Please let us know if we can help make an example like that, it would be good to demonstrate for other users.

Thanks,

Bryan

On Apr 18, 2016, at 5:08 PM, Jordan Bramble jordan...@gmail.com wrote:

Big thanks for the reply. I believe I am in a minority group where I have built a large scale single page app in Bokeh, and now I am trying to add a few new features, such as data export to .csv, Authentication, etc, and I am trying to avoid rewriting the app in Flask and incorporating bokeh that way. Overall I find the process of creating single page dashboard apps with Bokeh to be incredibly fun and easy, minus these few missing features.

However, I do think an “export to excel” Tool for DataTable would be quite useful, is this worth opening a github Issues/Feature Request for?

On Mon, Apr 18, 2016 at 5:49 PM, Bryan Van de Ven bry...@continuum.io wrote:

Hi Jordan,

Support for built-in Bokeh server auth was removed because for the most part, people trying to make “real world” deployments want to integrate directly with their existing AAA services, and not use anything canned or built-in to Bokeh. And people just using it locally want it to “just work”. There is simply no way we can support all the different systems people might want to work with (and we must acknowledge as well that we are not experts in this area), so the decision was taken to delegate to other facilities. So as of 0.11.1 to add Google auth in front of a Bokeh server app, you would need to run behind Nginx, or Apache, or something else that can do the authentication. There are other benefits to this configuration as well, namely scale-out behind a load balancer is possible.

That said, with recent capabilities for user-extensible models, as well as upcoming support for custom Jinja templates and static resources, I think it would be easy to demonstrate a single page app that performs auth of whatever sort around embedded bokeh plots and widgets. It might also be more appropriate now to imagine a path for optional server extensions for things like auth. Proposals (or PRs) for that sort of optional and clearly separated feature could certainly be entertained.

Thanks,

Bryan

On Apr 18, 2016, at 4:32 PM, Jordan Bramble jordan...@gmail.com wrote:

I believe R-Shiny has this option. I also believe older versions of Bokeh had authentication, and now it appears this is no more.

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+un...@continuum.io.

To post to this group, send email to bo...@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/7bdf9116-f08f-4ef5-9391-d582a7332146%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

–

You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+un...@continuum.io.

To post to this group, send email to bo...@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/92110EB8-6694-46EF-9C26-FA336A3EA658%40continuum.io.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

–
You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.

To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+un...@continuum.io.

To post to this group, send email to bo...@continuum.io.

To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/CAB%3DGhauypi7QPYvh7o7Bhd3zR7fAwn1x8T3WRuwCbZjkWB5C6Q%40mail.gmail.com.

For more options, visit https://groups.google.com/a/continuum.io/d/optout.

⌁   Link to post
Bryan
Bryan

Templ,

My current work centers around Jinja2, since that is what is already in use internally by Bokeh. Also it seems better to utilize an existing and popular tool than to invent something new without a good reason. But if there is enough interest in other options for templating, we could consider adding support for other libraries.

Bryan

···

On Apr 19, 2016, at 12:27 PM, Templ <rtempl31@gmail.com> wrote:

Will this entail a python bokeh templating DSL or will one be required to learn/use jinja?

On Monday, April 18, 2016 at 10:26:47 PM UTC-4, Bryan Van de ven wrote:
Jordan,

I am actually *really* excited about the custom templates and static asset serving that will enable easy single page apps from a Bokeh server. There are definitely times when a more sophisticated embedding in Flask, Django, etc. is the way to go but I think making SPAs with custom templates and styling trivial to create will be a huge feature that many users will find useful!

Saving data to .csv is definitely something app code could do, if there are users/auth to contend with that obviously complicates matters a little bit. Please let us know if we can help make an example like that, it would be good to demonstrate for other users.

Thanks,

Bryan

> On Apr 18, 2016, at 5:08 PM, Jordan Bramble <jordan...@gmail.com> wrote:
>
> Big thanks for the reply. I believe I am in a minority group where I have built a large scale single page app in Bokeh, and now I am trying to add a few new features, such as data export to .csv, Authentication, etc, and I am trying to avoid rewriting the app in Flask and incorporating bokeh that way. Overall I find the process of creating single page dashboard apps with Bokeh to be incredibly fun and easy, minus these few missing features.
>
> However, I do think an "export to excel" Tool for DataTable would be quite useful, is this worth opening a github Issues/Feature Request for?
>
> On Mon, Apr 18, 2016 at 5:49 PM, Bryan Van de Ven <bry...@continuum.io> wrote:
> Hi Jordan,
>
> Support for built-in Bokeh server auth was removed because for the most part, people trying to make "real world" deployments want to integrate directly with their existing AAA services, and not use anything canned or built-in to Bokeh. And people just using it locally want it to "just work". There is simply no way we can support all the different systems people might want to work with (and we must acknowledge as well that we are not experts in this area), so the decision was taken to delegate to other facilities. So as of 0.11.1 to add Google auth in front of a Bokeh server app, you would need to run behind Nginx, or Apache, or something else that can do the authentication. There are other benefits to this configuration as well, namely scale-out behind a load balancer is possible.
>
> That said, with recent capabilities for user-extensible models, as well as upcoming support for custom Jinja templates and static resources, I think it would be easy to demonstrate a single page app that performs auth of whatever sort around embedded bokeh plots and widgets. It might also be more appropriate now to imagine a path for optional server extensions for things like auth. Proposals (or PRs) for that sort of optional and clearly separated feature could certainly be entertained.
>
> Thanks,
>
> Bryan
>
>
>
> > On Apr 18, 2016, at 4:32 PM, Jordan Bramble <jordan...@gmail.com> wrote:
> >
> > I believe R-Shiny has this option. I also believe older versions of Bokeh had authentication, and now it appears this is no more.
> >
> > --
> > You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
> > To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+un...@continuum.io.
> > To post to this group, send email to bo...@continuum.io.
> > To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/7bdf9116-f08f-4ef5-9391-d582a7332146%40continuum.io\.
> > For more options, visit https://groups.google.com/a/continuum.io/d/optout\.
>
> --
> You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+un...@continuum.io.
> To post to this group, send email to bo...@continuum.io.
> To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/92110EB8-6694-46EF-9C26-FA336A3EA658%40continuum.io\.
> For more options, visit https://groups.google.com/a/continuum.io/d/optout\.
>
>
> --
> You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+un...@continuum.io.
> To post to this group, send email to bo...@continuum.io.
> To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/CAB%3DGhauypi7QPYvh7o7Bhd3zR7fAwn1x8T3WRuwCbZjkWB5C6Q%40mail.gmail.com\.
> For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

--
You received this message because you are subscribed to the Google Groups "Bokeh Discussion - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bokeh+unsubscribe@continuum.io.
To post to this group, send email to bokeh@continuum.io.
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/4d094868-a593-424d-900b-95ec2db0db86%40continuum.io\.
For more options, visit https://groups.google.com/a/continuum.io/d/optout\.

⌁   Link to post

End of archived discussion · Replies are disabled