77 lines
		
	
	
		
			No EOL
		
	
	
		
			3.6 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
		
			No EOL
		
	
	
		
			3.6 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <div class="config-certificates-field-element">
 | |
|   <div class="resource-view" resource="certificatesResource" error-message="'Could not load certificates list'">
 | |
|     <!-- File -->
 | |
|     <div class="co-alert co-alert-warning" ng-if="certInfo.status == 'file'">
 | |
|         <code>extra_ca_certs</code> is a single file and cannot be processed by this tool. If a valid and appended list of certificates, they will be installed on container startup.
 | |
|     </div>
 | |
| 
 | |
|     <div ng-if="certInfo.status != 'file'">
 | |
|         <div class="description">
 | |
|           <p>This section lists any custom or self-signed SSL certificates that are installed in the <span class="registry-name"></span> container on startup after being read from the <code>extra_ca_certs</code> directory in the configuration volume.
 | |
|           </p>
 | |
|           <p>
 | |
|           Custom certificates are typically used in place of publicly signed certificates for corporate-internal services.
 | |
|           </p>
 | |
|           <p>Please <strong>make sure</strong> that all custom names used for downstream services (such as Clair) are listed in the certificates below.</p>
 | |
|         </div>
 | |
| 
 | |
|         <table class="config-table" style="margin-bottom: 20px;">
 | |
|           <tr>
 | |
|             <td>Upload certificates:</td>
 | |
|             <td>
 | |
|               <div class="file-upload-box"
 | |
|                 api-endpoint="superuser/customcerts"
 | |
|                 select-message="Select custom certificate to add to configuration. Must be in PEM format and end extension '.crt'"
 | |
|                 files-selected="handleCertsSelected(files, callback)"
 | |
|                 reset="resetUpload"
 | |
|                 extensions="['.crt']"></div>
 | |
|             </td>
 | |
|           </tr>
 | |
|         </table>
 | |
| 
 | |
|         <table class="co-table">
 | |
|           <thead>
 | |
|             <td>Certificate Filename</td>
 | |
|             <td>Status</td>
 | |
|             <td>Names Handled</td>
 | |
|             <td class="options-col"></td>
 | |
|           </thead>
 | |
|           <tr ng-repeat="certificate in certInfo.certs" ng-if="!certsUploading">
 | |
|             <td>{{ certificate.path }}</td>
 | |
|             <td class="cert-status">
 | |
|               <div ng-if="certificate.error" class="red">
 | |
|                 <i class="fa fa-exclamation-circle"></i>
 | |
|                 Error: {{ certificate.error }}
 | |
|               </div>
 | |
|               <div ng-if="certificate.expired" class="orange">
 | |
|                 <i class="fa fa-exclamation-triangle"></i>
 | |
|                 Certificate is expired
 | |
|               </div>
 | |
|               <div ng-if="!certificate.error && !certificate.expired" class="green">
 | |
|                 <i class="fa fa-check-circle"></i>
 | |
|                 Certificate is valid
 | |
|               </div>
 | |
|             </td>
 | |
|             <td>
 | |
|               <div class="empty" ng-if="!certificate.names">(None)</div>
 | |
|               <a class="dns-name" ng-href="http://{{ name }}" ng-repeat="name in certificate.names" ng-safenewtab>{{ name }}</a>
 | |
|             </td>
 | |
|             <td class="options-col">
 | |
|               <span class="cor-options-menu">
 | |
|                 <span class="cor-option" option-click="deleteCert(certificate.path)">
 | |
|                   <i class="fa fa-times"></i> Delete Certificate
 | |
|                 </span>
 | |
|               </span>
 | |
|             </td>
 | |
|           </tr>
 | |
|         </table>
 | |
|         <div ng-if="certsUploading" style="margin-top: 20px; text-align: center;">
 | |
|           <div class="cor-loader-inline"></div>
 | |
|           Uploading, validating and updating certificate(s)
 | |
|         </div>
 | |
|         <div class="empty" ng-if="!certInfo.certs.length && !certsUploading" style="margin-top: 20px;">
 | |
|           <div class="empty-primary-msg">No custom certificates found.</div>
 | |
|         </div>
 | |
|       </div>
 | |
|   </div>
 | |
| </div> |