Secure Shell API Connector for Bitbucket Authorization Sync

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing authorization model for Bitbucket repositories using SSH keys fails to enforce proper access control, allowing unauthorized access even after users are removed from Active Directory groups, leading to potential security gaps and compliance issues.

Innovation Solution

Implementing a secure SSH connector that periodically runs and updates user permissions by comparing user lists from Bitbucket and Active Directory, removing users who are not part of active directory groups and updating their permissions accordingly.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If SSH keys are used for repository access, then ease of operation is improved, but security is worsened because users retain access after being removed from Active Directory groups

Engineering Contradiction:
ImproveSSH key accessVSAvoidauthorization control
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system performs preliminary actions by establishing an authorization model that proactively checks Active Directory group membership before granting repository access. This prevents unauthorized access by verifying user permissions in advance rather than reacting after the fact.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms that continuously monitor and update repository access permissions based on current Active Directory group membership. When users are added or removed from AD groups, the system detects these changes and automatically updates SSH key authorization status, ensuring access control remains synchronized with organizational policies.

Inventive Principle:
Principle #23Feedback

2Reliability

If manual login to Bitbucket is required to sync permissions, then authorization accuracy is improved, but productivity is worsened due to unreliable manual processes

Engineering Contradiction:
Improveauthorization syncVSAvoidmanual operation
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system enables self-service by implementing automated permission synchronization that operates without human intervention. The authorization model automatically detects changes in Active Directory group membership and updates repository access permissions accordingly, eliminating the need for manual login and synchronization operations.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system replaces manual mechanical operations (manual login, manual permission updates) with an automated computational system. The authorization model uses programmatic interfaces to continuously synchronize repository access permissions with Active Directory group membership, substituting human-driven manual processes with automated software-based permission management.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS11611563B2System and method for secure shell API connector
Publication Date: 2023.03.21 JPMORGAN CHASE BANK NA
  • US11611563B2 patent drawing
  • US11611563B2 patent drawing
  • US11611563B2 patent drawing

AI summary

Various methods, apparatuses/systems, and media for implementing an SSH connector are disclosed. A processor deploys a first API to get an active directory groups with a first user list data from a repository. The processor deploys a second API that calls an active directory to get a second user list data that lists users who are in given active directory groups that are authenticated and authorized. The processor also compares the first user list data to the second user list data; deploys a third API that returns active directory groups with users who are listed in the first user list data in the repository but not in the second user list data in the active directory groups; and deploys a fourth API that calls the repository to remove the users from groups in the repository who are not in the second user list data in the active directory groups.