
go-hsdp-api
A HSDP API client enabling Go programs to interact with various HSDP APIs in a simple and uniform way
Supported APIs
The current implement covers only a subset of HSDP APIs. Basically we implement functonality as needed.
- IAM token authorization
- Group management
- Organization management
- Permission management
- Role managemnet
- User management
- Password management
- Device management
- Proposition management
- Application management
- Service management
- Logging
- Auditing
- S3 Credentials Policy management
Usage
package main
import (
"fmt"
"github.com/philips-software/go-hsdp-api/iam"
)
func main() {
client, _ := iam.NewClient(nil, &iam.Config{
OAuth2ClientID: "ClientID",
OAuth2Secret: "ClientPWD",
SharedKey: "KeyHere",
SecretKey: "SecretHere",
IAMURL: "https://iam-stage.foo-bar.com",
IDMURL: "https://idm-stage.foo-bar.com",
})
err := client.Login("iam.login@aemian.com", "Password!@#")
if err != nil {
fmt.Printf("Error logging in: %v\n", err)
return
}
introspect, _, _ := client.Introspect()
if introspect != nil {
fmt.Printf("Introspect response: %v\n", introspect)
}
}
TODO
- Increase API coverage
- Increase code coverage
Issues
Author
Andy Lo-A-Foe (andy.lo-a-foe@philips.com)
License
License is MIT. See LICENSE file