github.com/grailbio/base@v0.0.11/security/identity/identity.vdl (about)

     1  // Package identity defines interfaces for Vanadium identity providers.
     2  package identity
     3  
     4  import (
     5      "v.io/v23/security"
     6      "v.io/v23/security/access"
     7  )
     8  
     9  // Ec2Blesser returns a blessing given the provided EC2 instance identity
    10  // document.
    11  type Ec2Blesser interface {
    12    // BlessEc2 uses the provided EC2 instance identity document in PKCS#7
    13    // format to return a blessing to the client.
    14    BlessEc2(pkcs7b64 string) (blessing security.WireBlessings | error)  {access.Read}
    15  }
    16  
    17  // GoogleBlesser returns a blessing giving the provided Google ID token.
    18  type GoogleBlesser interface {
    19    BlessGoogle(idToken string) (blessing security.WireBlessings | error)  {access.Read}
    20  }
    21  
    22  // K8sBlesser returns a blessing giving the provided Kubernetes service accountop token.
    23  type K8sBlesser interface {
    24    BlessK8s(caCrt string, namespace string, token string, region string) (blessing security.WireBlessings | error)  {access.Read}
    25  }