:doc:`DirectConnect <../../directconnect>` / Client / associate_mac_sec_key

*********************
associate_mac_sec_key
*********************



.. py:method:: DirectConnect.Client.associate_mac_sec_key(**kwargs)

  

  Associates a MAC Security (MACsec) Connection Key Name (CKN)/ Connectivity Association Key (CAK) pair with a Direct Connect connection.

   

  You must supply either the ``secretARN,`` or the CKN/CAK ( ``ckn`` and ``cak``) pair in the request.

   

  For information about MAC Security (MACsec) key considerations, see `MACsec pre-shared CKN/CAK key considerations <https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-mac-sec-getting-started.html#mac-sec-key-consideration>`__ in the *Direct Connect User Guide*.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/directconnect-2012-10-25/AssociateMacSecKey>`_  


  **Request Syntax**
  ::

    response = client.associate_mac_sec_key(
        connectionId='string',
        secretARN='string',
        ckn='string',
        cak='string'
    )
    
  :type connectionId: string
  :param connectionId: **[REQUIRED]** 

    The ID of the dedicated connection (dxcon-xxxx), interconnect (dxcon-xxxx), or LAG (dxlag-xxxx).

     

    You can use  DescribeConnections,  DescribeInterconnects, or  DescribeLags to retrieve connection ID.

    

  
  :type secretARN: string
  :param secretARN: 

    The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key to associate with the connection.

     

    You can use  DescribeConnections or  DescribeLags to retrieve the MAC Security (MACsec) secret key.

     

    If you use this request parameter, you do not use the ``ckn`` and ``cak`` request parameters.

    

  
  :type ckn: string
  :param ckn: 

    The MAC Security (MACsec) CKN to associate with the connection.

     

    You can create the CKN/CAK pair using an industry standard tool.

     

    The valid values are 64 hexadecimal characters (0-9, A-E).

     

    If you use this request parameter, you must use the ``cak`` request parameter and not use the ``secretARN`` request parameter.

    

  
  :type cak: string
  :param cak: 

    The MAC Security (MACsec) CAK to associate with the connection.

     

    You can create the CKN/CAK pair using an industry standard tool.

     

    The valid values are 64 hexadecimal characters (0-9, A-E).

     

    If you use this request parameter, you must use the ``ckn`` request parameter and not use the ``secretARN`` request parameter.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'connectionId': 'string',
          'macSecKeys': [
              {
                  'secretARN': 'string',
                  'ckn': 'string',
                  'state': 'string',
                  'startOn': 'string'
              },
          ]
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **connectionId** *(string) --* 

        The ID of the dedicated connection (dxcon-xxxx), interconnect (dxcon-xxxx), or LAG (dxlag-xxxx).

        
      

      - **macSecKeys** *(list) --* 

        The MAC Security (MACsec) security keys associated with the connection.

        
        

        - *(dict) --* 

          Information about the MAC Security (MACsec) secret key.

          
          

          - **secretARN** *(string) --* 

            The Amazon Resource Name (ARN) of the MAC Security (MACsec) secret key.

            
          

          - **ckn** *(string) --* 

            The Connection Key Name (CKN) for the MAC Security secret key.

            
          

          - **state** *(string) --* 

            The state of the MAC Security (MACsec) secret key.

             

            The possible values are:

             

            
            * ``associating``: The MAC Security (MACsec) secret key is being validated and not yet associated with the connection or LAG.
             
            * ``associated``: The MAC Security (MACsec) secret key is validated and associated with the connection or LAG.
             
            * ``disassociating``: The MAC Security (MACsec) secret key is being disassociated from the connection or LAG
             
            * ``disassociated``: The MAC Security (MACsec) secret key is no longer associated with the connection or LAG.
            

            
          

          - **startOn** *(string) --* 

            The date that the MAC Security (MACsec) secret key takes effect. The value is displayed in UTC format.

            
      
    
  
  **Exceptions**
  
  *   :py:class:`DirectConnect.Client.exceptions.DirectConnectServerException`

  
  *   :py:class:`DirectConnect.Client.exceptions.DirectConnectClientException`

  