Class SubjectAlternativeNames

java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.services.appmesh.SubjectAlternativeNames
All Implemented Interfaces:
software.amazon.jsii.JsiiSerializable

@Generated(value="jsii-pacmak/1.97.0 (build 729de35)", date="2024-04-18T17:54:12.597Z") @Stability(Stable) public abstract class SubjectAlternativeNames extends software.amazon.jsii.JsiiObject
Used to generate Subject Alternative Names Matchers.

Example:

 Mesh mesh;
 VirtualNode node1 = VirtualNode.Builder.create(this, "node1")
         .mesh(mesh)
         .serviceDiscovery(ServiceDiscovery.dns("node"))
         .listeners(List.of(VirtualNodeListener.grpc(GrpcVirtualNodeListenerOptions.builder()
                 .port(80)
                 .tls(ListenerTlsOptions.builder()
                         .mode(TlsMode.STRICT)
                         .certificate(TlsCertificate.file("path/to/certChain", "path/to/privateKey"))
                         // Validate a file client certificates to enable mutual TLS authentication when a client provides a certificate.
                         .mutualTlsValidation(MutualTlsValidation.builder()
                                 .trust(TlsValidationTrust.file("path-to-certificate"))
                                 .build())
                         .build())
                 .build())))
         .build();
 String certificateAuthorityArn = "arn:aws:acm-pca:us-east-1:123456789012:certificate-authority/12345678-1234-1234-1234-123456789012";
 VirtualNode node2 = VirtualNode.Builder.create(this, "node2")
         .mesh(mesh)
         .serviceDiscovery(ServiceDiscovery.dns("node2"))
         .backendDefaults(BackendDefaults.builder()
                 .tlsClientPolicy(TlsClientPolicy.builder()
                         .ports(List.of(8080, 8081))
                         .validation(TlsValidation.builder()
                                 .subjectAlternativeNames(SubjectAlternativeNames.matchingExactly("mesh-endpoint.apps.local"))
                                 .trust(TlsValidationTrust.acm(List.of(CertificateAuthority.fromCertificateAuthorityArn(this, "certificate", certificateAuthorityArn))))
                                 .build())
                         // Provide a SDS client certificate when a server requests it and enable mutual TLS authentication.
                         .mutualTlsCertificate(TlsCertificate.sds("secret_certificate"))
                         .build())
                 .build())
         .build();
 
  • Nested Class Summary

    Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject

    software.amazon.jsii.JsiiObject.InitializationMode
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
     
    protected
    SubjectAlternativeNames(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
     
    protected
    SubjectAlternativeNames(software.amazon.jsii.JsiiObjectRef objRef)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    bind(software.constructs.Construct scope)
    Returns Subject Alternative Names Matcher based on method type.
    matchingExactly(@NotNull String... names)
    The values of the SAN must match the specified values exactly.

    Methods inherited from class software.amazon.jsii.JsiiObject

    jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface software.amazon.jsii.JsiiSerializable

    $jsii$toJson
  • Constructor Details

    • SubjectAlternativeNames

      protected SubjectAlternativeNames(software.amazon.jsii.JsiiObjectRef objRef)
    • SubjectAlternativeNames

      protected SubjectAlternativeNames(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • SubjectAlternativeNames

      @Stability(Stable) protected SubjectAlternativeNames()
  • Method Details

    • matchingExactly

      @Stability(Stable) @NotNull public static SubjectAlternativeNames matchingExactly(@NotNull @NotNull String... names)
      The values of the SAN must match the specified values exactly.

      Parameters:
      names - The exact values to test against. This parameter is required.
    • bind

      @Stability(Stable) @NotNull public abstract SubjectAlternativeNamesMatcherConfig bind(@NotNull software.constructs.Construct scope)
      Returns Subject Alternative Names Matcher based on method type.

      Parameters:
      scope - This parameter is required.