mirror of
https://github.com/davidallendj/opaal.git
synced 2025-12-20 11:37:01 -07:00
Major refactoring and code restructure
This commit is contained in:
parent
72adbe1f0d
commit
6d63211d35
10 changed files with 454 additions and 859 deletions
|
|
@ -1,48 +0,0 @@
|
|||
package opaal
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
)
|
||||
|
||||
type ClientCredentialsFlowParams struct {
|
||||
State string `yaml:"state"`
|
||||
ResponseType string `yaml:"response-type"`
|
||||
}
|
||||
|
||||
type ClientCredentialsFlowEndpoints struct {
|
||||
Create string
|
||||
Authorize string
|
||||
Token string
|
||||
}
|
||||
|
||||
func ClientCredentials(eps ClientCredentialsFlowEndpoints, client *Client) error {
|
||||
// register a new OAuth 2 client with authorization srever
|
||||
_, err := client.CreateOAuthClient(eps.Create, nil)
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to register OAuth client: %v", err)
|
||||
}
|
||||
|
||||
// authorize the client
|
||||
_, err = client.AuthorizeOAuthClient(eps.Authorize)
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to authorize client: %v", err)
|
||||
}
|
||||
|
||||
// request a token from the authorization server
|
||||
res, err := client.PerformTokenGrant(eps.Token, "")
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to fetch token from authorization server: %v", err)
|
||||
}
|
||||
|
||||
fmt.Printf("token: %v\n", string(res))
|
||||
return nil
|
||||
}
|
||||
|
||||
func ClientCredentialsWithConfig(config *Config, client *Client) error {
|
||||
eps := ClientCredentialsFlowEndpoints{
|
||||
Create: config.Authorization.RequestUrls.Clients,
|
||||
Authorize: config.Authorization.RequestUrls.Authorize,
|
||||
Token: config.Authorization.RequestUrls.Token,
|
||||
}
|
||||
return ClientCredentials(eps, client)
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue