> ## Documentation Index
> Fetch the complete documentation index at: https://www.1password.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# 1Password Service Accounts

export const Link = ({to, className = "", children}) => {
  const baseStyles = "inline-block px-6 py-3 text-center font-medium text-white no-underline transition-all duration-200";
  const buttonStyles = {
    "button--primary": "mint-bg-[#0969DA] hover:mint-bg-[#0860CA] mint-rounded-lg mint-border-b-0",
    "button--secondary": "mint-bg-gray-600 hover:mint-bg-gray-700 mint-rounded-lg mint-border-b-0"
  };
  const classes = className.split(" ");
  const buttonClass = classes.find(c => c.startsWith("button--"));
  const otherClasses = classes.filter(c => !c.startsWith("button"));
  const appliedStyles = buttonClass ? `${baseStyles} ${buttonStyles[buttonClass] || ""} ${otherClasses.join(" ")}` : `${baseStyles} ${className}`;
  return <a href={to} className={appliedStyles}>
      {children}
    </a>;
};

export const HighlightCard = ({title, preheader, link, src, darkSrc, children, useButton = true}) => {
  return <div className="bg-white dark:bg-zinc-900 border border-gray-200 dark:border-zinc-800 rounded-xl shadow-sm flex flex-col h-full not-prose overflow-hidden mb-4">
      {preheader && <div className="bg-gray-50 dark:bg-white/5 border-b border-gray-200 dark:border-white/10 px-6 py-3">
          <span className="text-sm font-medium text-gray-600 dark:text-gray-400 block">{preheader}</span>
        </div>}
      <div className="p-6 flex flex-col flex-grow">
        <h3 className="text-lg font-bold text-gray-900 dark:text-white mb-2 mt-0 flex items-center gap-2">
          {src && <>
              {darkSrc ? <>
                  <span className="dark:hidden">
                    <Icon icon={src} size={32} />
                  </span>
                  <span className="hidden dark:inline">
                    <Icon icon={darkSrc} size={32} />
                  </span>
                </> : <Icon icon={src} size={32} />}
            </>}
          {title}
        </h3>
        <div className="text-gray-600 dark:text-gray-300 mb-6 flex-grow leading-relaxed">{children}</div>
        {link && <div className="mt-auto">
            {useButton ? <a href={link.to} className="inline-flex items-center justify-center bg-[#0094FC] hover:bg-[#007acc] text-white font-medium py-2 px-4 rounded-lg transition-colors no-underline text-sm">
                {link.text || "Learn more"}
              </a> : <a href={link.to} className="highlight-card-link hover:opacity-80 font-medium hover:underline inline-flex items-center gap-1 group text-sm">
                {link.text || "Learn more"}
                <Icon icon="arrow-right" className="text-inherit" />
              </a>}
          </div>}
      </div>
    </div>;
};

1Password Service Accounts help automate secrets management in your applications and infrastructure without the need to deploy additional services.

Service accounts work well for shared environments because they provide an authentication method for [1Password CLI](/cli/) that isn't associated with an individual. You control which vaults and Environments are accessible and which actions the service account can perform. And you can see what items a service account accesses by creating a [usage report](https://support.1password.com/reports#create-a-usage-report-for-a-team-member-service-account-or-vault).

You can create up to 100 service accounts.

<Tip>
  **Not sure if service accounts are for you?**

  See the [secrets automation comparison table](/secrets-automation/#comparison).
</Tip>

## Use cases

You can use 1Password Service Accounts to accomplish a variety of tasks:

<CardGroup cols={2}>
  <HighlightCard title="Provision web services with secrets" preheader="Web services" useButton={false}>
    Use a service account to provision an account with a secret stored in 1Password.

    <br />

    <br />

    If a web service needs access to a database (and the credentials for the database are in 1Password), you can use a service account to provision an account with the needed secret and allow the web service to access the secret during test runs.
  </HighlightCard>

  <HighlightCard title="Create a test environment" preheader="Test environments" useButton={false}>
    Use a service account in a test environment while using Connect in production.

    <br />

    <br />

    Using a service account for your test environment allows you to create a similar test environment while keeping secrets or access compartmentalized. You can use service accounts to automatically access secrets in the test environment without having to set up Connect.
  </HighlightCard>

  <HighlightCard title="Load secrets into CI/CD pipelines" preheader="CI/CD pipelines" useButton={false}>
    Use a service account to automatically access your secrets in continuous integration environments.

    <br />

    <br />

    If you've committed code and want to automatically run your CI/CD pipeline with credentials stored in a 1Password vault, you can use a service account to automatically access your secrets and use them for testing and deploying code while maintaining security without tying sensitive information to a personal user account.
  </HighlightCard>

  <HighlightCard title="Secure infrastructure secrets" preheader="Infrastructure secrets" useButton={false}>
    Use service accounts to make sure infrastructure secrets aren't tied to a personal user account.
  </HighlightCard>

  <HighlightCard title="Automate secrets management" preheader="Secrets management" useButton={false}>
    Use service accounts to automate scripts to manage secrets.

    <br />

    <br />

    Using a service account helps you implement the principal of least privilege and avoid the limitations of personal accounts (for example, SSO and MFA requirements).
  </HighlightCard>

  <HighlightCard title="Streamline development workflows" preheader="Development workflows" useButton={false}>
    Use service accounts to securely share and manage infrastructure secrets to streamline development workflows.
  </HighlightCard>
</CardGroup>

## Get started

Learn how to get started and how to create, manage, and integrate with service accounts.

<Link className="button button--primary" to="/service-accounts/get-started/">
  {"Get started"}
</Link>
