1 of 13

Authorization

using OAuth Bearer Tokens

2 of 13

Resource Owner

elf Pavlik - with various credentials on the homepage, including public keys and email addresses

https://wwelves.org/perpetual-tripper

<link rel="publickey" href="ni:///sha-256;Jppu8cEVKIdh-1MqyL3IIMJG5gwI3cb6kA-NmznmPS4?ct=application/x-x509-user-cert" />

<link rel="gpgkey" href="/keys/1179616f-ae06-466f-82ba-225461e689f1" />

<link rel="me" href="mailto:perpetual-tripper@wwelves.org" />

HTML

read

3 of 13

Client

unmpc - unhosted reader and micropub client

HTML5 app running fully in a web browser

https://elf-pavlik.github.io/unmpc

(client)

MPC

(write)

https://wwelves.org/perpeual-tripper

https://phubble.tuxed.net/alice-b-day/

Reader

(read)

agent:

object:

4 of 13

Resource Server

phubble - provides personal and group spaces, both public and secret

(resource server)

MPE

write

HTML

read

5 of 13

Authorization Server

IndieCert - supports authentication with X.509 client certificates

https://indiecert.net/

AS

(authorization server)

6 of 13

Read

public group

7 of 13

(client)

MPC

(write)

https://wwelves.org/perpeual-tripper

https://phubble.tuxed.net/w3c-social

Reader

(read)

agent:

object:

(resource server)

MPE

write

HTML

read

8 of 13

Write

Read

any group

secret group

9 of 13

Discover authorization server

(client)

MPC

(write)

https://wwelves.org/perpeual-tripper

https://phubble.tuxed.net/w3c-social

Reader

(read)

agent:

object:

(resource server)

MPE

write

HTML

read

AS

(authorization server)

HTML

read

10 of 13

Authenticate to get authorization code

(client)

MPC

(write)

https://wwelves.org/perpeual-tripper

https://phubble.tuxed.net/w3c-social

Reader

(read)

agent:

object:

(resource server)

MPE

write

HTML

read

AS

(authorization server)

HTML

read

(redirect)

11 of 13

Exchange authorization code for access token

(client)

MPC

(write)

https://wwelves.org/perpeual-tripper

https://phubble.tuxed.net/w3c-social

Reader

(read)

agent:

object:

(resource server)

MPE

write

HTML

read

AS

(authorization server)

HTML

read

12 of 13

Access group space using access token

(client)

MPC

(write)

https://wwelves.org/perpeual-tripper

https://phubble.tuxed.net/w3c-social

Reader

(read)

agent:

object:

(resource server)

MPE

write

HTML

read

AS

(authorization server)

HTML

read

13 of 13

CORS

http://www.w3.org/TR/cors/

  • Proxy required when CORS not enabled
  • all HTML pages need CORS enabled (GET & OPTIONS)
  • Micropub endpoint needs CORS enabled (POST & OPITONS)
  • Token endpoint needs CORS enabled (POST)