akamai

package
v2.28.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 15, 2021 License: MIT Imports: 18 Imported by: 0

README

EAA Akamai IDP support for Saml2AWS

This code supports to authenticate user from cli with saml to Akamai SAML IDP without browser

Requirements

Building the Code

  • Install Go 1.12
  • Set GOPATH
  • clone code from github link to $GOPATH/src/github.com/versent/saml2aws
  • copy akamai.go to versent/saml2aws/pkg/providers/akamai/
  • Merge code from saml2aws.go to support Akamai config.
  • Ensure $GOPATH/bin in your $PATH
  • make deps
  • make install
  • Binary will be present in GOPATH/bin

Configuring the SAML IDP

  • create Akamai EAA IDP
  • Create a saml saas app
  • Add Attribute as mentioned below in example.

"attrmap": [ { "fmt": "uri_reference", "name": "https://aws.amazon.com/SAML/Attributes/Role", "src": "", "val": "arn:aws:iam::432929478872:saml-provider/AkamaiIDP,arn:aws:iam::432929478872:role/AkamaiIDProle" }, { "fmt": "basic", "name": "https://aws.amazon.com/SAML/Attributes/RoleSessionName", "val": "punit@qadomain.com" }, { "fmt": "basic", "name": "https://aws.amazon.com/SAML/Attributes/SessionDuration", "val": "1200" } ]

Using the saml2aws

Documentation

Index

Constants

View Source
const (
	IdentifierDuoMfa   = "duo"
	IdentifierSmsMfa   = "sms"
	IdentifierEmailMfa = "email"
	IdentifierTotpMfa  = "totp"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AuthRequest

type AuthRequest struct {
	Username string `json:"username"`
	Password string `json:"password"`
}

AuthRequest represents an mfa Akamai request

type Client

type Client struct {
	provider.ValidateBase
	// contains filtered or unexported fields
}

Client is a wrapper representing a Akamai SAML client

func New

func New(idpAccount *cfg.IDPAccount) (*Client, error)

New creates a new Akamai client

func (*Client) Authenticate

func (oc *Client) Authenticate(loginDetails *creds.LoginDetails) (string, error)

Authenticate logs into Akamai and returns a SAML response

type MfaPushRequest

type MfaPushRequest struct {
	Force bool   `json:"force"`
	Uuid  string `json:"uuid"`
}

type MfaTokenVerify

type MfaTokenVerify struct {
	Category       string `json:"category"`
	Token          string `json:"token"`
	Uuid           string `json:"uuid"`
	DuoSigRequest  string `json:"sig_request"`
	DuoSigResponse string `json:"sig_response"`
}

type MfaUserOption

type MfaUserOption struct {
	UserDisplayString string
	UserMfaOption     string
}
type NavRequest struct {
	Hostname string `json:"hostname"`
}

Navigate request for saml

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL