Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
We Distribute
  1. Home
  2. General Discussion
  3. For people interested in #ActivityPub #C2S (client to server), the #GoActivityPub services have gained the ability to dynamically register OAuth2 clients based on RFC7591.

For people interested in #ActivityPub #C2S (client to server), the #GoActivityPub services have gained the ability to dynamically register OAuth2 clients based on RFC7591.

Scheduled Pinned Locked Moved General Discussion
goactivitypubc2sactivitypub
21 Posts 5 Posters 0 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • mariusor@metalhead.clubM mariusor@metalhead.club

    @smallcircles GoActivityPub servers support following things for Client to Server:

    * Accessing objects and collections
    * Filtering the collections through query parameters (eg. ?type=Create)

    * Support for OAuth2 actor endpoints information and authorization
    * Support for .well-known information (webfinger and now, OAuth2 client registration)

    * ACLs for accessing them based on recipients list - this includes collection filtering of individual items
    * ACL principal extraction from OAuth2 Bearer token (or from HTTP-Signature)

    * Outbox Activity validation & processing (which I think is the main one :D)

    mariusor@metalhead.clubM This user is from outside of this forum
    mariusor@metalhead.clubM This user is from outside of this forum
    mariusor@metalhead.club
    wrote last edited by
    #6

    ( @smallcircles in case you wanted a starting point )

    smallcircles@social.coopS 1 Reply Last reply
    0
    • mariusor@metalhead.clubM mariusor@metalhead.club

      ( @smallcircles in case you wanted a starting point )

      smallcircles@social.coopS This user is from outside of this forum
      smallcircles@social.coopS This user is from outside of this forum
      smallcircles@social.coop
      wrote last edited by
      #7

      @mariusor wonderful, thank you. It is updated on codeberg now 🙂

      mariusor@metalhead.clubM 1 Reply Last reply
      0
      • smallcircles@social.coopS smallcircles@social.coop

        @mariusor wonderful, thank you. It is updated on codeberg now 🙂

        mariusor@metalhead.clubM This user is from outside of this forum
        mariusor@metalhead.clubM This user is from outside of this forum
        mariusor@metalhead.club
        wrote last edited by
        #8

        @smallcircles sometime in the future I'll have a bit more explanations about the different things to incorporate in the #GoActivityPub documentation.

        I'll try to remember to ping you. 🙂

        1 Reply Last reply
        0
        • mariusor@metalhead.clubM mariusor@metalhead.club

          For people interested in #ActivityPub #C2S (client to server), the #GoActivityPub services have gained the ability to dynamically register OAuth2 clients based on RFC7591.

          The easiest to test is the ONI project that can be directly run without much setup: https://git.sr.ht/~mariusor/oni

          django@social.coopD This user is from outside of this forum
          django@social.coopD This user is from outside of this forum
          django@social.coop
          wrote last edited by
          #9

          @mariusor this is great, I'm looking forward to testing this 🔥

          mariusor@metalhead.clubM 1 Reply Last reply
          0
          • django@social.coopD django@social.coop

            @mariusor this is great, I'm looking forward to testing this 🔥

            mariusor@metalhead.clubM This user is from outside of this forum
            mariusor@metalhead.clubM This user is from outside of this forum
            mariusor@metalhead.club
            wrote last edited by
            #10

            When you do, feel free to ping me with questions (here or on the mailing list).

            1 Reply Last reply
            0
            • mariusor@metalhead.clubM mariusor@metalhead.club

              For people interested in #ActivityPub #C2S (client to server), the #GoActivityPub services have gained the ability to dynamically register OAuth2 clients based on RFC7591.

              The easiest to test is the ONI project that can be directly run without much setup: https://git.sr.ht/~mariusor/oni

              evan@cosocial.caE This user is from outside of this forum
              evan@cosocial.caE This user is from outside of this forum
              evan@cosocial.ca
              wrote last edited by
              #11

              @mariusor nice!

              1 Reply Last reply
              0
              • mariusor@metalhead.clubM mariusor@metalhead.club

                For people interested in #ActivityPub #C2S (client to server), the #GoActivityPub services have gained the ability to dynamically register OAuth2 clients based on RFC7591.

                The easiest to test is the ONI project that can be directly run without much setup: https://git.sr.ht/~mariusor/oni

                evan@cosocial.caE This user is from outside of this forum
                evan@cosocial.caE This user is from outside of this forum
                evan@cosocial.ca
                wrote last edited by
                #12

                @mariusor did you implement the oauth metadata endpoint also? Can clients discover the registration endpoint easily?

                mariusor@metalhead.clubM 1 Reply Last reply
                0
                • evan@cosocial.caE evan@cosocial.ca

                  @mariusor did you implement the oauth metadata endpoint also? Can clients discover the registration endpoint easily?

                  mariusor@metalhead.clubM This user is from outside of this forum
                  mariusor@metalhead.clubM This user is from outside of this forum
                  mariusor@metalhead.club
                  wrote last edited by
                  #13

                  @evan yes, yes, of course. 😄 They go hand in hand...

                  I remember seeing on the SWICG mailing list a comment where this mechanism is no longer considered secure, but I don't recall the details.

                  evan@cosocial.caE 1 Reply Last reply
                  0
                  • mariusor@metalhead.clubM mariusor@metalhead.club

                    @evan yes, yes, of course. 😄 They go hand in hand...

                    I remember seeing on the SWICG mailing list a comment where this mechanism is no longer considered secure, but I don't recall the details.

                    evan@cosocial.caE This user is from outside of this forum
                    evan@cosocial.caE This user is from outside of this forum
                    evan@cosocial.ca
                    wrote last edited by
                    #14

                    @mariusor yeah, it might be a good idea to think about CIMD. It uses the same schema of properties as dynamic registration, but you fetch them at authorization time instead. I implemented both in onepage.pub and it was pretty straightforward.

                    Link Preview Image
                    CIMD - OAuth Client ID Metadata Documents

                    Learn about Client ID Metadata Documents (CIMD) - a new OAuth approach that lets clients identify themselves using URLs instead of preregistration. Presented by Stytch.

                    favicon

                    CIMD (client.dev)

                    evan@cosocial.caE mariusor@metalhead.clubM 2 Replies Last reply
                    0
                    • evan@cosocial.caE evan@cosocial.ca

                      @mariusor yeah, it might be a good idea to think about CIMD. It uses the same schema of properties as dynamic registration, but you fetch them at authorization time instead. I implemented both in onepage.pub and it was pretty straightforward.

                      Link Preview Image
                      CIMD - OAuth Client ID Metadata Documents

                      Learn about Client ID Metadata Documents (CIMD) - a new OAuth approach that lets clients identify themselves using URLs instead of preregistration. Presented by Stytch.

                      favicon

                      CIMD (client.dev)

                      evan@cosocial.caE This user is from outside of this forum
                      evan@cosocial.caE This user is from outside of this forum
                      evan@cosocial.ca
                      wrote last edited by
                      #15

                      @mariusor are you coming to FOSDEM? I think we should have an ActivityPub API hackday.

                      mariusor@metalhead.clubM 1 Reply Last reply
                      0
                      • evan@cosocial.caE evan@cosocial.ca

                        @mariusor are you coming to FOSDEM? I think we should have an ActivityPub API hackday.

                        mariusor@metalhead.clubM This user is from outside of this forum
                        mariusor@metalhead.clubM This user is from outside of this forum
                        mariusor@metalhead.club
                        wrote last edited by
                        #16

                        @evan as of now I don't plan to come.

                        But I have no other obligations for February, maybe a last minute change of heart. 😄

                        evan@cosocial.caE 1 Reply Last reply
                        0
                        • evan@cosocial.caE evan@cosocial.ca

                          @mariusor yeah, it might be a good idea to think about CIMD. It uses the same schema of properties as dynamic registration, but you fetch them at authorization time instead. I implemented both in onepage.pub and it was pretty straightforward.

                          Link Preview Image
                          CIMD - OAuth Client ID Metadata Documents

                          Learn about Client ID Metadata Documents (CIMD) - a new OAuth approach that lets clients identify themselves using URLs instead of preregistration. Presented by Stytch.

                          favicon

                          CIMD (client.dev)

                          mariusor@metalhead.clubM This user is from outside of this forum
                          mariusor@metalhead.clubM This user is from outside of this forum
                          mariusor@metalhead.club
                          wrote last edited by
                          #17

                          @evan yes, this is the one, I realized I already added it to my ticket list: https://todo.sr.ht/~mariusor/go-activitypub/337

                          1 Reply Last reply
                          0
                          • mariusor@metalhead.clubM mariusor@metalhead.club

                            @evan as of now I don't plan to come.

                            But I have no other obligations for February, maybe a last minute change of heart. 😄

                            evan@cosocial.caE This user is from outside of this forum
                            evan@cosocial.caE This user is from outside of this forum
                            evan@cosocial.ca
                            wrote last edited by
                            #18

                            @mariusor let me ask, what are your opinions on beer?

                            mariusor@metalhead.clubM 1 Reply Last reply
                            0
                            • evan@cosocial.caE evan@cosocial.ca

                              @mariusor let me ask, what are your opinions on beer?

                              mariusor@metalhead.clubM This user is from outside of this forum
                              mariusor@metalhead.clubM This user is from outside of this forum
                              mariusor@metalhead.club
                              wrote last edited by
                              #19

                              @evan I lived in Burssels for some many years, you won't tempt me with beer. 😈

                              evan@cosocial.caE 1 Reply Last reply
                              0
                              • mariusor@metalhead.clubM mariusor@metalhead.club

                                @evan I lived in Burssels for some many years, you won't tempt me with beer. 😈

                                evan@cosocial.caE This user is from outside of this forum
                                evan@cosocial.caE This user is from outside of this forum
                                evan@cosocial.ca
                                wrote last edited by
                                #20

                                @mariusor that's too bad. All I have left is mussels, French fries, large-scale bureaucracy, and peeing statues.

                                1 Reply Last reply
                                0
                                • mariusor@metalhead.clubM mariusor@metalhead.club

                                  For people interested in #ActivityPub #C2S (client to server), the #GoActivityPub services have gained the ability to dynamically register OAuth2 clients based on RFC7591.

                                  The easiest to test is the ONI project that can be directly run without much setup: https://git.sr.ht/~mariusor/oni

                                  thisismissem@activitypub.spaceT This user is from outside of this forum
                                  thisismissem@activitypub.spaceT This user is from outside of this forum
                                  thisismissem@activitypub.space
                                  wrote last edited by
                                  #21

                                  I'd generally discourage RFC7591 in decentralized systems due to the fact that it creates client sprawl (this is currently a problem with Mastodon's client registration mechanism, which is why we created CIMDs) — every client in RFC7591 is a distinct client, with its own client_id and client_secret, which can make client management interfaces difficult to implement (e.g., every time you login on a mobile device or SPA, you'll get a brand new client_id). CIMDs solve this by anchoring client metadata to a URI, and using that URI as the client_id.

                                  If you need to test clients using CIMDs in development, there is cimd-service however, it's currently targeting the AT Protocol ecosystem (so has a few specifics that at present there that would not necessarily make sense of ActivityPub)

                                  1 Reply Last reply
                                  0
                                  Reply
                                  • Reply as topic
                                  Log in to reply
                                  • Oldest to Newest
                                  • Newest to Oldest
                                  • Most Votes


                                  • Login

                                  • Don't have an account? Register

                                  • Login or register to search.
                                  Powered by NodeBB Contributors
                                  • First post
                                    Last post
                                  0
                                  • Categories
                                  • Recent
                                  • Tags
                                  • Popular
                                  • World
                                  • Users
                                  • Groups