{"id":13818009,"url":"https://github.com/guilhem/freeipa-issuer","last_synced_at":"2025-03-15T11:31:51.414Z","repository":{"id":42631178,"uuid":"323695800","full_name":"guilhem/freeipa-issuer","owner":"guilhem","description":"A cert-manager external issuer for FreeIPA","archived":false,"fork":false,"pushed_at":"2024-04-30T09:30:36.000Z","size":186,"stargazers_count":32,"open_issues_count":11,"forks_count":14,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-10-17T18:27:25.364Z","etag":null,"topics":["certificate","kubernetes","pki"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/guilhem.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-12-22T17:48:42.000Z","updated_at":"2024-09-18T15:48:56.000Z","dependencies_parsed_at":"2024-06-19T00:18:04.735Z","dependency_job_id":"0caffaa5-e610-4d1e-9fed-641aed32c55f","html_url":"https://github.com/guilhem/freeipa-issuer","commit_stats":{"total_commits":19,"total_committers":6,"mean_commits":"3.1666666666666665","dds":0.5263157894736843,"last_synced_commit":"c2ca77f20640b189c0753c0d4a313e2c94e1b6ac"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guilhem%2Ffreeipa-issuer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guilhem%2Ffreeipa-issuer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guilhem%2Ffreeipa-issuer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/guilhem%2Ffreeipa-issuer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/guilhem","download_url":"https://codeload.github.com/guilhem/freeipa-issuer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221572172,"owners_count":16845596,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["certificate","kubernetes","pki"],"created_at":"2024-08-04T07:00:26.915Z","updated_at":"2024-10-26T19:34:04.646Z","avatar_url":"https://github.com/guilhem.png","language":"Go","funding_links":[],"categories":["Extras"],"sub_categories":[],"readme":"# FreeIPA Issuer\n\n[![CodeQL](https://github.com/guilhem/freeipa-issuer/workflows/CodeQL/badge.svg)](https://github.com/guilhem/freeipa-issuer/actions?query=workflow%3ACodeQL)\n\nA [cert-manager](https://cert-manager.io) external issuer to be used with [FreeIPA](https://www.freeipa.org/).\n\n## Prerequisite\n\n- kubernetes\n- cert-manager **1.0+**\n- [kustomize](https://github.com/kubernetes-sigs/kustomize)\n- optional: Kubernetes worker nodes adopted into FreeIPA domain (for use with self signed certificate)\n\n## Install\n\n### kustomize\n\n`kustomization.yaml`:\n\n```yaml\napiVersion: kustomize.config.k8s.io/v1beta1\nkind: Kustomization\nmetadata:\n  name: freeipa-issuer\n\ncommonLabels:\n  app: freeipa-issuer\n\nresources:\n  - https://github.com/guilhem/freeipa-issuer/config/default\n```\n\n## Configuration\n\n[examples](config/samples)\n\n### Issuer\n\nAn issuer is namespaced\n\n```yaml\napiVersion: certmanager.freeipa.org/v1beta1\nkind: Issuer\nmetadata:\n  name: issuer-sample\nspec:\n  host: freeipa.example.test\n  user:\n    name: freeipa-auth\n    key: user\n  password:\n    name: freeipa-auth\n    key: password\n\n  # Optionals\n  serviceName: HTTP\n  addHost: true\n  addService: true\n  addPrincipal: true\n  ca: ipa\n  # Do not check certificate of IPA server connection\n  insecure: true # unless you can create your own container and inject IPA server CA as trusted.\n  # This fixes a bug when adding a service\n  ignoreError: true\n\n---\napiVersion: v1\nkind: Secret\nmetadata:\n  name: freeipa-auth\ndata:\n  user: b64value\n  password: b64value\n```\n\n### Disable Approval Check\n\nThe FreeIPA Issuer will wait for CertificateRequests to have an [approved\ncondition\nset](https://cert-manager.io/docs/concepts/certificaterequest/#approval) before\nsigning. If using an older version of cert-manager (pre v1.3), you can disable\nthis check by supplying the command line flag `-disable-approved-check` to the\nIssuer Deployment.\n\n## Usage\n\n### Secure an Ingress resource\n\n```yaml\napiVersion: extensions/v1beta1\nkind: Ingress\nmetadata:\n  name: example-ingress\n  annotations:\n    kubernetes.io/ingress.class: traefik\n    #Specify the name of the issuer to use must be in the same namespace\n    cert-manager.io/issuer: freeipa-issuer\n    #The group of the out of tree issuer is needed for cert-manager to find it\n    cert-manager.io/issuer-group: certmanager.freeipa.org\n    #Specify a common name for the certificate\n    cert-manager.io/common-name: www.example.com\n\nspec:\n  #placing a host in the TLS config will indicate a certificate should be created\n  tls:\n    - hosts:\n      - www.example.com\n      #The certificate will be stored in this secret\n      secretName: example-cert\n  rules:\n    - host: www.example.com\n      http:\n        paths:\n          - path: /\n            backend:\n              serviceName: backend\n              servicePort: 80\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguilhem%2Ffreeipa-issuer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fguilhem%2Ffreeipa-issuer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fguilhem%2Ffreeipa-issuer/lists"}